Vous êtes sur la page 1sur 104

UNIVERSIDAD DE LOS ANDES

FACULTAD DE INGENIERA
ESCUELA DE INGENIERA ELCTRICA

DISEO DE UN CONTROLADOR SUPERVISORIO


PARA UN MDULO DE TEMPERATURA
Trabajo de Grado presentado como requisito parcial para optar al ttulo de Ingeniero
Electricista

Br. Jess O. Lacruz J.


Tutor: Prof. Francisco Viloria

Mrida, Junio, 2009

ii
UNIVERSIDAD DE LOS ANDES
FACULTAD DE INGENIERA
ESCUELA DE INGENIERA ELCTRICA

APROBACIN

DISEO DE UN CONTROLADOR SUPERVISORIO


PARA UN MDULO DE TEMPERATURA
Br. Jess O. Lacruz J.
Trabajo de Grado, presentado en cumplimiento parcial de los requisitos exigidos para
optar al ttulo de Ingeniero Electricista, aprobado en nombre de la Universidad de Los
Andes por el siguiente Jurado.

_____________________________
Prof. Francisco Viloria
C.I. 9.164.539

__________________________
Prof. Leonardo Zambrano
C.I. 8.020.142

_______________________________
Prof. Rubn Rojas
C.I. 8.025.075

iii

DEDICATORIA

Dedicatoria
Quiero dedicar este trabajo a mis padres Jess
Omar y Berenice, quienes me han dado todo en
esta vida y han hecho posible la culminacin de
este trabajo.
Todo para ustedes

iv
Br. Jess O. Lacruz J. Diseo de un Controlador Supervisorio para un Mdulo de
Temperatura. Universidad De Los Andes. Tutor: Prof. Francisco Viloria. Junio 2009

RESUMEN
RESUMEN

En este trabajo se presenta el diseo de un controlador local de temperatura


supervisado va Internet, para un horno de resistencias. Para este fin se realiz la medicin de
la temperatura en el habitculo del horno usando una termocupla tipo K, luego de realizar el
acondicionamiento de la de la seal proveniente de la misma usando un circuito integrado
dedicado para tal fin, se introduce a un microcontrolador en el cual se implement el algoritmo
para un controlador PID discreto que genera el ciclo de servicio adecuado para el modulador
de ancho de pulso (PWM) que controla la potencia entregada a las resistencias del horno a
travs de un rel de estado slido que conmuta la lnea que alimenta el horno. Adems de esto,
el PIC se encarga de mostrar en una pantalla LCD el valor actual de la temperatura en el
interior del horno y el valor de la temperatura de referencia del controlador. Este sistema se
comunica con un modulo que contiene un microcontrolador en el cual se implementa un
servidor Web. Para este ltimo se dise una pgina Web interactiva, en donde el usuario
puede cambiar el valor de la temperatura de referencia en el controlador y observar cmo es la
evolucin de la temperatura en el interior del horno en tiempo real. Adems de esto el usuario
puede cambiar los parmetros del controlador, pudiendo con esto pasar de un controlador PID,
a un controlador PD, PI, o P. El sistema se comunica con el servidor Web usando
comunicacin serial RS-232 para el intercambio de informacin entre el sistema y el mdulo.

Descriptores: Servidor Web, Comunicacin Serial, Control PID, Microcontrolador,


Termocupla

NDICE GENERAL
APROBACIN ...........................................................................................................................ii
DEDICATORIA........................................................................................................................ iii
RESUMEN .................................................................................................................................iv
INTRODUCCIN.......................................................................................................................1
Capitulo

pp.

1. MARCO TERICO..............................................................................................................4
1.1. INSTRUMENTACIN VIRTUAL .................................................................................4
1.2. SISTEMA FSICO ...........................................................................................................4
1.3. ELEMENTOS BSICOS QUE CONFORMAN UN SISTEMA GENRICO...............5
1.3.1. Computador ...............................................................................................................5
1.3.2. Transductor................................................................................................................5
1.3.3. Acondicionamiento de la seal..................................................................................6
1.3.4. Circuitos de adquisicin de datos ..............................................................................6
1.3.5. Circuitos de anlisis...................................................................................................6
1.3.6. Software .....................................................................................................................6
1.4. TERMOPARES................................................................................................................7
1.5. CONTROL PID................................................................................................................9
1.5.1. Accin proporcional ................................................................................................10
1.5.2. Accin derivativa.....................................................................................................11
1.5.3. Accin integral ........................................................................................................11
1.6. CONTROL PID DISCRETO .........................................................................................12
1.7. SUPERVISIN REMOTA DE PROCESOS INDUSTRIALES ...................................16
1.8. MODELO DE REFERENCIA OSI................................................................................18
1.8.1. Nivel fsico ..............................................................................................................19
1.8.2. Nivel de enlace ........................................................................................................19
1.8.3. Nivel de red .............................................................................................................19
1.8.4. Nivel de transporte ..................................................................................................20
1.8.5. Niveles de sesin, presentacin y aplicacin...........................................................20
1.9. ESTRUCTURAS DE PROTOCOLOS EN INTERNET ...............................................20
1.9.1 Capa De Acceso a La Red ........................................................................................21
1.9.2. Nivel IP o nivel Internet ..........................................................................................21
1.9.3. Capa De Transporte .................................................................................................22
1.9.4. Nivel de Aplicacin .................................................................................................23
1.10. SERVIDOR WEB ........................................................................................................23
1.11. INTERFAZ DE ENTRADA COMN ........................................................................24
1.12. JAVASCRIPT ..............................................................................................................24
2. DESCRIPCION DE LA ARQUITECTURA ....................................................................26
2.1. COMPONENTES DE HARDWARE ..............................................................................26
2.1.1. Horno .......................................................................................................................26

vi
2.1.2. Termopar .................................................................................................................27
2.1.3. Acondicionamiento de seal....................................................................................27
2.1.4. Microcontrolador .....................................................................................................28
2.1.5. Circuito de acoplamiento de seal...........................................................................30
2.1.6. Rel..........................................................................................................................30
2.1.7. Servidor Web...........................................................................................................31
2.1.7.1. Conexin del mdulo sbc65ecr con el PIC18F452 ..........................................32
2.2. COMPONENTES DE SOFTWARE ...............................................................................33
2.2.1. PIC18F452...............................................................................................................33
2.2.1.1. Programa Principal. ..........................................................................................33
2.2.1.2. Rutina de interrupcin por desbordamiento del TIMER1. ...............................37
2.2.1.3. Funcin controlador..........................................................................................39
2.2.1.4 Rutina de interrupcin por desbordamiento del TIMER2 .................................41
2.2.2. Mdulo sbc65ecr .....................................................................................................42
2.2.2.4. Monitoreo de las variables del controlador. .....................................................44
2.2.2.5 Cambio en los parmetros del controlador ........................................................49
3. DISEO DE PGINAS WEB ............................................................................................54
3.1. TIPOS DE PGINAS WEB SOPORTADAS ...............................................................54
3.2. CREACION DE PGINAS WEB .................................................................................55
3.3. PGINA WEB DISEADA..........................................................................................60
3.3.1. Introduccin.............................................................................................................62
3.3.2. Monitoreo Temperatura...........................................................................................62
3.3.3. Cambio del Setpoint ................................................................................................63
3.3.4. Controlador..............................................................................................................65
3.3.5. Ajuste del controlador .............................................................................................66
3.3.6. Configuracin ..........................................................................................................67
4. PRUEBAS AL SISTEMA ...................................................................................................70
4.1. DISEO DEL MDULO QUE CONTIENE AL CONTROLADOR ..........................70
4.2. IDENTIFICACIN DEL SISTEMA .............................................................................72
4.3. SINTONIZACIN DEL CONTROLADOR .................................................................75
4.4. PRUEBAS AL CONTROLADOR.................................................................................76
4.5. CONEXIN DEL MDULO SBC65ECR CON EL CONTROLADOR .....................78
CONCLUSIONES.....................................................................................................................84
RECOMENDACIONES ...........................................................................................................86
REFERENCIAS ........................................................................................................................87
ANEXOS ...................................................................................................................................89

vii

LISTA DE FIGURAS

Figura

pp.

1.1. Sistema de adquisicin de datos y control............................................................................7


1.2. Efecto Peltier (Palls Areny, 2007) ...................................................................................7
1.3. Efecto Thompson (Palls Areny, 2007) ............................................................................8
1.4. Sistema con control proporcional (Camacho, 1999) ..........................................................10
1.5. Accin integral frente a una seal de error constante.........................................................11
1.6. Resultado de la multiplicacin de una seal continua por la funcin impulso...................13
1.7. Esquema de un sistema controlado a travs de Internet. ....................................................17
1.8. Modelo de referencia OSI...................................................................................................18
1.9. Modelo Internet ..................................................................................................................20
2.1. Componentes del Sistema...................................................................................................26
2.2. Diagrama del circuito alrededor del microcontrolador.......................................................29
2.3. Circuito de Acoplamiento...................................................................................................30
2.4. Rel de estado slido (Chacn, 2004) ................................................................................31
2.5. Mdulo sbc65ecr (Modtronix Engineering, 2007) .............................................................31
2.6. Caja de Expansin IOR5E con la modificacin realizada..................................................33
2.7. Diagrama de conexin en el conector plug stereo..............................................................33
2.8. Diagrama de flujo correspondiente al programa principal .................................................35
2.9. Rutina de interrupcin por desbordamiento del TIMER1...................................................38
2.10. Despliegues en pantalla LCD ...........................................................................................39
2.11. Diagrama de Flujo para la funcin controlador ...............................................................40
2.12. Interrupcin por desbordamiento del TIMER2.................................................................42
2.13. Funcin HTTPGetVar ante la solicitud de la variable temperatura .................................48
2.14. Diagrama de flujo de la funcin mon_temp......................................................................49
2.15. Funcin execNameValueCmd para el comando z1 ..........................................................52
2.16. Funcin camsetp para un setpoint de 75 C......................................................................53
3.1. Pgina Web ejemplo del cambio de estado en el pin B0....................................................57
3.2. Carga de pginas Web usando Modtronix Network Bootloader ........................................59
3.3. Actualizacin del programa del PIC usando Modtronix Network Bootloader...................59
3.4. Pantalla mostrada al ingresar al sitio Web diseado ..........................................................61
3.5. Seccin Monitoreo de Temperatura ...................................................................................62
3.6. Seccin Cambio del Setpoint al Controlador......................................................................64
3.7. Seccin Monitoreo de los parmetros del Controlador ......................................................66
3.8. Seccin Ajuste del Controlador..........................................................................................67
3.9. Seccin Configuracin .......................................................................................................68
3.10. Seccin Cambio de los parmetros de la red....................................................................69
4.1. Disposicin de los elementos en la placa de circuito impreso ...........................................71
4.2. Mdulo Controlador ensamblado (Vista Superior) ............................................................71
4.3. Mdulo Controlador ensamblado (Vista Frontal) ..............................................................72
4.4. Curva de reaccin para identificar el sistema (Camacho, 1999) ........................................73

viii
4.5. Curva de Reaccin realizada experimentalmente...............................................................74
4.6. Ajuste del Setpoint a 150 C partiendo de temperatura ambiente ......................................76
4.7. Ajuste del Setpoint a 200 C partiendo de 150 C ..............................................................77
4.8. Ajuste del Setpoint a 100 C partiendo de 200 C ..............................................................77
4.9. Conexin del controlador al mdulo sbc65ecr ...................................................................79
4.10. Prueba comunicacin entre los mdulos (Vista Explorador Web)...................................80
4.11. Prueba comunicacin entre los mdulos (Vista Pantalla Controlador)............................80
4.12. Cambio de los parmetros en el controlador (Introduccin de datos)..............................81
4.13. Cambio de los parmetros en el controlador (Recarga de la Pgina)...............................82
4.14. Monitoreo de los parmetros del controlador...................................................................82

ix

LISTA DE TABLAS

Tabla

pp.

1.1. Instrumentos Tradicionales vs. Virtuales .............................................................................5


1.2. Tipos de acciones de los controladores ..............................................................................10
2.1. Valores vlidos para Kp, Ti y Td .......................................................................................34
2.2. Posibles cadenas de caracteres recibidas desde el puerto serie ..........................................36
2.3. Configuracin del microcontrolador ..................................................................................37
2.4. Valores a ser introducidos para tener controlador P, PI, PD, PID......................................41
2.5. Grupo de variables desde a hasta j ................................................................................44
2.6. Valores de las variables para los grupos desde a hasta j ...............................................45
2.7. Grupos de variables para el mdulo SBC65EC .................................................................46
2.8. Valores de las variables para el grupo z ..........................................................................47
2.9. Comandos para manejo de los puertos ...............................................................................50
2.10. Comandos creados para cambios en los parmetros en el controlador ............................51
4.1. Parmetros de Sintonizacin usando el mtodo de Ziegler - Nichols ................................75

INTRODUCCIN

Los avances tecnolgicos producidos durante los ltimos aos en el campo de las
comunicaciones ha permitido que los costos de sistemas supervisorios a distancia hayan
disminuido cuantiosamente, lo cual ha trado como consecuencia que las empresas hayan
optado por este tipo de control cuando es requerido por las condiciones del proceso y por la
posibilidad de tener informacin de las variables controladas sin necesidad de apersonarse en
la sala de control respectiva.
Estos avances tecnolgicos han permitido la implementacin de sistemas con buenas
prestaciones y tamaos reducidos, que adems cuentan con la ventaja del gran auge que ha
tenido la red Internet en el mundo y especficamente en Venezuela, llegando incluso a sitios
bastante inhspitos donde hace algunos aos no se pensaba que estos servicios pudieran llegar.
La implementacin de servidores Web en microcontroladores ha permitido prescindir
del uso del computador de escritorio para la puesta en marcha de sistemas supervisorios a
distancia, ya que en circuitos de tamao reducido se han implementado el hardware y el
software necesarios para realizar el monitoreo y control de variables industriales a un costo
relativamente bajo, comparado con el uso de equipos especializados para el mismo fin.

El objetivo general del Trabajo de Grado realizado es el diseo de un sistema


supervisorio basado en sistemas embebidos a travs de Internet, para cumplir con el mismo se
deben cumplir con una serie de tareas, a saber: diseo de la instrumentacin necesaria para
acondicionar las seales provenientes de la medicin de la temperatura en el interior del
horno; obtencin de un modelo de temperatura para ser usado en simulacin; diseo de un
control de temperatura para el horno; establecer el protocolo de comunicacin necesaria entre

2
el servidor Web y el controlador de temperatura; diseo de la pgina de interaccin entre el
operador y el servidor Web.
El trabajo presentado muestra un prototipo de un sistema supervisorio de diminuto
tamao que permite la aplicacin de control PID o cualquiera de sus variantes, a la
temperatura en un horno, usando un microcontrolador para tal fin. El mdulo que conforma el
horno ha sido utilizado en anteriores oportunidades en los laboratorios de la Escuela de
Ingeniera Elctrica de la ULA, igualmente para la aplicacin de control PID, permitiendo el
ajuste de los parmetros concernientes al mismo a travs de Internet (Chacn, 2004), pero, en
ese caso se utilizaron equipos costosos para el acondicionamiento de la seal proveniente de la
termocupla y para generar la seal que acta sobre el elemento final de control. Adems, en
ese caso se utiliz un computador personal (Personal Computer, PC) dedicado a la ejecucin
del programa que implementa el servidor Web.
En el presente trabajo, se propone otra manera de aplicar control PID para la
manipulacin de la temperatura en el horno, mediante un microcontrolador, implementando en
el mismo el algoritmo que permite la aplicacin de control PID discreto, adems, en lugar de
usar un PC para la implementacin del servidor Web, se utiliza el mdulo sbc65ecr, el cual
teniendo un encapsulado compacto, permite: la ejecucin del programa del servidor; el
almacenamiento de pginas Web en una memoria EEPROM (Memoria de slo lectura
programable y borrable elctricamente de sus siglas en ingls Electrically-Erasable
Programmable Read-Only Memory) externa de 512Kb; comunicacin serial RS232, SPI (Bus
de interface de perifricos de sus siglas en ingls Serial Peripheral Interface) e I2C (Circuitos
Inter-Integrados de sus siglas en ingls Inter-Integrated Circuit), para la comunicacin con
dispositivos externos y 32 terminales de entrada salida configurables por el usuario. Estas,
entre otras caractersticas, hacen del mdulo sbc65ecr una excelente herramienta para la
construccin de un sistema supervisorio como el presentado en este trabajo.
El prototipo presentado permitir la elaboracin de prcticas en el laboratorio de
control, donde los estudiantes puedan interactuar con un sistema completo donde se identifica
cada uno de los elementos de un sistema de control y a su vez se puede hacer ajuste de sus

3
parmetros a distancia usando un navegador Web o tambin de manera local usando un
teclado matricial para tal fin.
En el captulo I se desarrolla el marco terico, en el cual se explican los conceptos
fundamentales que permiten una mejor comprensin del sistema supervisorio presentado. En
el captulo II se describe la arquitectura presentada: en relacin al hardware y cada uno de los
elementos que conforman el sistema; relativo al software se explica cmo fue elaborado el
programa para el PIC que controla el horno y cmo fue modificado el programa del mdulo
sbc65ecr para que el mismo cumpliese con los requerimientos del sistema. En el captulo III se
explica cules son los requerimientos para la elaboracin de pginas Web que puedan ser
almacenadas en el mdulo y adems cmo se construy el sitio Web que permite el monitoreo
del sistema, pasando por cada una de las secciones que lo integran. En el captulo IV se
explican las pruebas realizadas al sistema y cmo se realiz la puesta a punto de la planta
(modelaje del sistema, ajuste de parmetros). Finalmente se completa el trabajo con las
conclusiones y recomendaciones derivadas del prototipo diseado.

CAPTULO I
MARCO TERICO
En este captulo se explican conceptos bsicos relacionados con la estructura de los sistemas
de control, y con las partes que componen el sistema de control implementado en el diseo.
Tambin se aclaran conceptos relacionados al servidor Web y cmo el mismo es
implementado en el mdulo sbc65ecr.

1.1. INSTRUMENTACIN VIRTUAL


El concepto de instrumentacin virtual nace a partir del uso del computador personal como
instrumento de medicin de seales tales como temperatura, presin, caudal, etc. Este
concepto involucra el procesamiento, anlisis, almacenamiento, distribucin y despliegue de
los datos. En un instrumento virtual, el software es la clave del sistema, a diferencia del
instrumento tradicional, donde la clave es el hardware (National Instruments, 2008). En la
tabla 1.1 se realiza una comparacin entre las caractersticas de un instrumento virtual y uno
tradicional.

1.2. SISTEMA FSICO


Es el punto de inicio donde se recopilan los datos y su vez es el punto final sobre el cual
actuamos a partir de las rdenes de control. Dentro de este sistema se produce un proceso
fsico que es una combinacin de operaciones que se ejecutan con el fin de realizar algn
cambio sobre el sistema. El proceso se caracteriza por una serie de elementos de entrada y
salida de energa e informacin. La energa es el componente bsico en todo proceso y la
informacin es una parte indispensable que ayuda a realizar el control (Mnuel y Biel, 2002).

5
Tabla 1.1. Instrumentos Tradicionales vs. Virtuales (Mnuel y Biel, 2002)

Instrumento Tradicional

Instrumento Virtual

Definido por el fabricante

Definido por el usuario

Funcionalidad especfica, con


conectividad limitada.

Funcionalidad ilimitada, orientado a


aplicaciones, conectividad amplia.

Hardware es la clave.

Software es la clave

Alto costo/funcin

Bajo costo/funcin, variedad de


funciones, reusable.

Arquitectura "cerrada"

Arquitectura "abierta".

Lenta incorporacin de nuevas


tecnologa.

Rpida incorporacin de nuevas


tecnologas.

Bajas economas de escala, alto


costo de mantenimiento.

Altas economas de escala, bajos


costos de mantenimiento.

1.3. ELEMENTOS BSICOS QUE CONFORMAN UN SISTEMA


GENRICO
1.3.1. Computador
El mismo determina la velocidad de procesamiento del sistema. Las aplicaciones que
requieren procesamiento de seales de alta frecuencia en tiempo real requieren computadores
potentes generalmente con procesadores digitales de seales (DSP, Digital Signal Processor).
En aplicaciones ms simples se pueden utilizar procesadores ms lentos (Mnuel y Biel,
2002).
1.3.2. Transductor
Es un dispositivo capaz de sensar el fenmeno fsico, transformando el tipo de energa de
entrada en una seal elctrica (transductor elctrico) aceptada por el sistema de adquisicin

6
de datos (Mnuel y Biel, 2002).
1.3.3. Acondicionamiento de la seal
Por lo general la seal elctrica que entrega el transductor debe ser tratada o escalada de tal
forma que pueda ser aceptada por el sistema de adquisicin. En general consta de tres etapas
(Mnuel y Biel, 2002):

Amplificacin

Linealizacin

Aislamiento

1.3.4. Circuitos de adquisicin de datos


Generalmente, en su manera ms simple incorpora una tarjeta que recibe la seal analgica y
realiza la conversin digital (Mnuel y Biel, 2002).
1.3.5. Circuitos de anlisis
Los computadores actuales tienen una capacidad de procesamiento tal que ellos mismos
pueden adquirir datos y analizar resultados. Aunque, existen aplicaciones donde el
microprocesador de estos no puede procesar los datos con la suficiente rapidez, por lo que en
esos casos se hace necesaria la inclusin de mdulos de anlisis basados en DSP (Mnuel y
Biel, 2002).
1.3.6. Software
Comprende una serie de componentes lgicos que convierten al computador y a los circuitos
de adquisicin de datos en un sistema completo de adquisicin, anlisis y presentacin de
resultados, en los que tambin es posible incorporar algoritmos que permiten realizar
estrategias de control (Mnuel y Biel, 2002).

Figura 1.1. Sistema de adquisicin de datos y control

1.4. TERMOPARES
Tomas Seebeek descubri en 1822, que en un circuito formado por dos metales distintos A y
B homogneos con uniones a diferentes temperaturas aparece una corriente elctrica o una
fuerza electromotrz (si se abre el circuito), la cual depende de los tipos de metales
involucrados y de la diferencia de temperaturas de las uniones. La f.e.m. producida depende de
los efectos Peltier y Thompson, el primero fue descubierto por Jean C. Peltier en 1834 y
consiste en el calentamiento o enfriamiento de una unin entre metales al circular una
corriente a travs de ella, Peltier descubri que al invertir el sentido de la corriente a travs de
una unin, si la misma se calentaba (ceda calor), entonces ahora se enfriara (absorbe calor) y
viceversa. Este efecto solo depende de la composicin de la unin, y viene descrita por el
coeficiente de Peltier, el cual es llamado Tensin Peltier (Creus, 1998; Palls Areny,
2007).

Figura 1.2. Efecto Peltier (Palls Areny, 2007)

8
El efecto Thompson consiste en la absorcin o liberacin de calor por parte de un
conductor homogneo por el que circule una corriente. El calor que se libera es proporcional a
la corriente, por lo tanto el mismo cambia de direccin al cambiar de sentido el flujo de
corriente. Realizando anlisis de las ecuaciones que describen estos efectos y considerando
que la corriente que circula es pequea, por lo que se puede despreciar el efecto Joule, se lleg
a la conclusin que el efecto Seebeek es la combinacin de los efectos Peltier y Thompson
(Creus, 1998; Palls Areny, 2007).

Figura 1.3. Efecto Thompson (Palls Areny, 2007)

Los termopares son los transductores ms usados en la medida de temperaturas, por su


robustez, economa y porque son activos, es decir, generan una tensin elctrica sin necesidad
de fuente de alimentacin. Las desventajas es que su sensibilidad es baja por lo que requieren
medidas con alta resolucin y son altamente no lineales (Planas Rossell, 2002).
La medicin de temperaturas con termopares esta regida por las llamadas leyes
termoelctricas, las cuales han sido demostradas por la experiencia y estn basadas en
calibraciones empricas (Crdenas, 1997).

La f.e.m. en un termopar con uniones a las temperaturas T1 y T2 no es afectada por la


temperatura en otras partes del circuito, si los metales A y B son homogneos
(Crdenas, 1997).

La f.e.m. en un termopar no cambia al colocar un metal C entre el metal A B,


siempre y cuando las uniones nuevas estn a la misma temperatura (Crdenas, 1997).

La f.e.m. en un termopar no cambia al colocar un metal C en una de las uniones,


siempre y cuando las uniones AC y BC estn a la misma temperatura (Crdenas,
1997).

Si la f.e.m. de los metales A y C es EAC y la de los metales B y C es ECB, la f.e.m. de


los metales A y B es EAC + ECB (Crdenas, 1997).

Si un termopar produce una f.e.m. E1 cuando las uniones estn a las temperaturas T1 y
T2 y produce E2 cuando estn a las temperaturas T2 y T3, producir E1 + E2 cuando las
uniones estn a las temperaturas T1 y T3 (Crdenas, 1997).
La medicin de temperaturas con termopares implica una serie de limitaciones que

deben ser consideradas, la temperatura mxima a medir debe ser menor que la temperatura de
fusin de los metales que conforman el termopar, tambin se debe tomar en cuenta que el
medio que se esta midiendo no ataca ninguno de los metales. Otra limitante, no menos
importante, es que la circulacin de corriente a travs del termopar debe ser pequea, ya que si
esto no se cumple el efecto Joule seria apreciable, y por lo tanto la temperatura de la unin
seria diferente a la temperatura del entorno, lo cual presentara una fuente importante de error
en las medidas. Se debe adems considerar que la unin de referencia debe estar a una
temperatura constante para poder realizar mediciones con la otra unin, ya que cualquier
cambio en la temperatura de referencia repercutira en errores en las medidas realizadas
(Creus, 1998; Palls Areny, 2007).

1.5. CONTROL PID


En el control de procesos se requiere de un sistema que ajuste una variable del proceso para
mantener otra dentro de lmites establecidos. Generalmente para lograr esto, lo que se realiza
es tener un sistema a lazo cerrado, que consiste en sensar constantemente la variable que se
desea tener dentro de los limites y compararla con el valor que se desea tener, generar una
seal de error, con la cual, de acuerdo a la accin de control establecida, toma medidas

10
pertinentes. Comercialmente existen controladores que pueden tener una de las acciones de
control presentadas en la tabla 1.2 (Camacho, 1999).

Tabla 1.2. Tipos de acciones de los controladores


ACCIN DE CONTROL
Proporcional (P)
Proporcional ms Integral (PI)
Proporcional ms Derivativo (PD)
Proporcional ms Integral ms Derivativo (PID)
Dos Posiciones (ON OFF)

1.5.1. Accin proporcional


En este tipo de accin el controlador entrega una seal, cuyo valor es proporcional al error. La
seal de correccin aumenta cuando el error aumenta, y disminuye cuando la seal de error lo
hace tambin. En este caso la funcin de transferencia del controlador seria una constante
(Kp). Este tipo de accin se caracteriza porque acelera el tiempo de respuesta del sistema con
respecto al tiempo que se tendra con un sistema a lazo abierto, pero tiene la gran desventaja
que no elimina el error en estado permanente, pero s lo disminuye para valores grandes de
Kp, con la consecuencia que el sistema puede tender a la inestabilidad (Crdenas, 1997; Creus,
1998).

Figura 1.4. Sistema con control proporcional (Camacho, 1999)

11
1.5.2. Accin derivativa
La seal de salida es proporcional a la velocidad del cambio en el tiempo de la seal de error,
la funcin de transferencia correspondiente es Kds. Este tipo de accin es muy til en
procesos que presenten cambios rpidos en la seal medida ya que el mismo anticipa la
accin de control para mantener ms estable la variable controlada. La accin derivativa ayuda
a mejorar el tiempo de respuesta del sistema, y tambin a disminuir las oscilaciones en estado
estable, no corrige el error en estado estable ni responde a perturbaciones constantes (ya que la
derivada es igual a cero), por lo tanto, la misma se usa generalmente en conjunto con la accin
proporcional y/o integral. No debe ser usada en procesos que presenten mucho ruido, ya que la
derivada tendra un valor demasiado elevado que perjudicara la accin del controlador (Creus,
1998; Grupo de Desarrollo ARIAN S.A, 2002).
1.5.3. Accin integral
La tasa de cambio de la salida del controlador es proporcional a la seal de error en la entrada
del mismo. La funcin de transferencia es Ki/s. La accin integral tiene la capacidad de
corregir el error en estado estable, esto se puede observar en la figura 1.5, donde se tiene que
ante una seal de error constante, la salida varia a una tasa constante, de este modo el error se
va corrigiendo hasta finalmente desaparece. Este tipo de accin generalmente no se usa sola,
ya que esta slo tiene la capacidad de mejorar la respuesta en estado estable, descuidando el
tiempo de respuesta y las oscilaciones (Creus, 1998; Camacho, 1999).

Figura 1.5. Accin integral frente a una seal de error constante

12
Se debe conocer que tipo de accin tiene cada uno de los controladores estudiados para
que de esta manera, se logre seleccionar el ms adecuado de acuerdo a las caractersticas del
proceso que se desea controlar. De acuerdo a esto se tiene comercialmente las distintas
combinaciones para las acciones de los controladores (P, PI, PD, PID). El control PID
combina las tres acciones de control, permitiendo de esta manera eliminar el error en estado
estable, mejorar el tiempo de respuesta y disminuir la tendencia a las oscilaciones. De manera
general la salida del controlador responde a la forma de la ecuacin 1.1:

Isal = K p e + K i edt + K d

de
dt

(1.1)

Aplicando la transformada de Laplace y hallando la funcin de transferencia del


controlador se obtiene:

F ( s ) = K p (1 +

1
+ sTd )
sTi

(1.2)

Se observa que se tienen tres parmetros ajustables (Kp, i, d), los cuales de acuerdo a
los valores que tengan, el controlador tendr un tipo de accin diferente. Para obtener estos
valores se debe sintonizar el controlador aplicando el mtodo de la ltima ganancia o el
mtodo de la curva de reaccin (Camacho, 1999). Se debe notar tambin que en los
controladores PID se puede eliminar la accin integral o la derivativa haciendo i d=0,
convirtiendo el controlador en un PD o PI respectivamente.

1.6. CONTROL PID DISCRETO


Hasta estos momentos se han considerado al proceso y al sistema de control como funciones
continuas en el tiempo, en este caso el control PID se implementa haciendo un seguimiento
continuo de la variable a controlar usando amplificadores operacionales. (amplificador,
circuito derivador e integrador), hallando las constantes que definen al controlador a partir de
la funcin de transferencia que caracteriza al circuito.

13
Para poder usar microcontroladores en la implementacin del control PID se debe
hacer un cambio en la seal, de analgica a digital, mediante un proceso conocido como
muestreo. En este caso la funcin de transferencia se ve modificada ya que se estara
trabajando en tiempo discreto y no en tiempo continuo. Para obtener la funcin de
transferencia en tiempo discreto se debe usar la transformada Z, la cual esta definida en la
ecuacin 1.3 para una funcin continua x(t) (Moreno, 2003):
X ( z ) = Z [ x(t )] = Z [ x(kT )] = k =0 x(kT ) Z k

(1.3)

En donde T es el periodo de muestreo y k es un nmero entero.


El proceso de muestreo se puede interpretar como el resultado de multiplicar la seal
continua x(t) por la funcin impulso. El resultado de esta operacin es una secuencia de
impulsos separados entre ellos T(s) cuya amplitud es el valor de x(t) en el instante de muestreo
(Moreno, 2003).
x * (t ) = k =0 x(kT ) (t kT )

Figura 1.6. Resultado de la multiplicacin de una seal continua por la funcin impulso
(www.todopic.com.ar:80/foros/index.php)

Aplicando la transformada de Laplace a la ecuacin 1.4 se obtiene:

(1.4)

14
(1.5)
(1.6)
(1.7)
Esta ecuacin 1.7 se puede escribir como la siguiente sumatoria:
X * ( s ) = k =0 x(kT )e kTs

(1.8)

Si se realiza el cambio de variable z = e-Ts en la ecuacin 1.8 se obtiene la siguiente


expresin:

(1.9)
Analizando la ecuacin 1.9 se concluye que la transformada de Laplace de una seal
muestreada por impulsos x*(t) es la misma que la transformada z de la seal continua x(t), si
se define z = e-Ts (Moreno, 2003).
El tiempo de muestreo T es un factor de suma importancia en el sistema ya que
afectar la funcin de transferencia del mismo, debido al cambio de variable de tiempo
continuo a tiempo discreto. Por lo general se selecciona un valor de T de ocho a diez veces
menor, que el periodo de las oscilaciones sinusoidales amortiguadas de la salida del sistema a
lazo cerrado (Moreno, 2003).
Para discretizar la ecuacin de un controlador PID se debe hacer uso de la
transformada z, adems de algunas aproximaciones, para que el microprocesador pueda
realizar los clculos correspondientes. La primera de ellas corresponde a aplicar el mtodo de
Euler, conocido tambin como el mtodo de aproximacin de diferencias hacia atrs, el cual
consiste en sustituir las derivadas por la ecuacin 1.10 en diferencias (Moreno, 2003):

x&

x(k + 1) x(k )
G ( z ) G (s )
T

s = 1 z 1 / T

(1.10)

15
En cuanto al trmino integral, el mismo se aproxima usando el mtodo de la
aproximacin rectangular hacia adelante, obteniendo como resultado la ecuacin 1.11
(Moreno, 2003):

e( )d
0

k 1

e(i)

(1.11)

i =0

Haciendo las aproximaciones de la ecuacin 1.10 y 1.11 se obtiene la ecuacin 1.12


para el controlador PID discreto, evaluado en un instante de muestreo k (Moreno, 2003):

T
u ( k ) = K e( k ) +
i

e(i) + T (e(k ) e(k 1))


k 1

(1.12)

i =0

La ecuacin 1.12 es conocida como la forma posicional del PID. Otro modo de
discretizar la ecuacin del PID consiste en hallar la ecuacin para u(k-1) con lo cual se
obtiene:

T
u (k 1) = K e(k 1) +
i

e(i) + T (e(k 1) e(k 2))


k 2

i =0

(1.13)

Si se resta la ecuacin 1.13 de la ecuacin 1.12, agrupando trminos, se obtiene:


u (k ) = u (k 1) + q0 e(k ) + q1e(k 1) + q 2 e(k 2 )

(1.14)

En donde:

T d
q 0 = K 1 +
+
2 i T

2
T
q1 = K 1
+ d
T
2 i

q2 =

K d
T

(1.15)

(1.16)
(1.17)

16
Con lo cual se obtiene la funcin de transferencia descrita por la ecuacin 1.18:
U ( z ) q 0 z 2 + q1 z + q 2
=
E( z)
z ( z 1)

(1.18)

La cual se conoce como forma de velocidad del PID, que presenta la ventaja de
eliminar posibles desbordamientos del trmino integral y adems evita el almacenamiento de
datos para el clculo de esta componente.
Un controlador PID discreto real presenta ciertos problemas, el primero de ellos es que
el error entre dos instantes consecutivos de muestreo puede tomar valores muy grandes, que al
ser multiplicados por la constante derivativa puede saturar el actuador, lo cual sucede cuando
se presenta ruido en el sistema. Este inconveniente se puede evitar situando la ganancia
derivativa en el lazo de realimentacin, lo cual presenta la ventaja de no experimentar
variaciones bruscas que saturen el actuador. Otro problema se puede presentar por la
saturacin integral llamada tambin efecto windup debido a que en sistemas lentos la integral
del error puede llegar a tomar valores muy grandes, lo cual hace que la accin integral tome
valores muy grandes tambin saturando el actuador durante mucho tiempo. Para evitar este
problema, se utilizan esquemas de control que permiten la desactivacin del efecto integral
cuando el mismo alcanza un cierto valor (Moreno, 2003).

1.7. SUPERVISIN REMOTA DE PROCESOS INDUSTRIALES


Un proceso industrial requiere de la disposicin de la informacin necesaria para la toma de
decisiones que involucren al proceso que se lleva a cabo en la industria. El disponer de dicha
informacin es de gran importancia para mejorar la calidad del producto y mantener la
eficiencia de la produccin. Estas y otras razones hacen que se requiera una herramienta para
poder visualizar, almacenar y manejar la informacin proveniente del proceso industrial en
cuestin. Dado al gran auge que ha tenido la red Internet, hoy en da se tienen sistemas de
monitoreo que permiten mantener bajo observacin la planta, desde cualquier lugar donde se
tenga acceso a Internet, con lo cual se evita que el supervisor se encuentre ubicado fsicamente

17
en el lugar donde se est desarrollando el proceso, bien por cuestiones que implican seguridad
para el operador o por imposibilidades de acceso (Escudero, 2002).
El monitoreo de un sistema desde un sitio remoto trae mltiples beneficios, sobre todo
cuando el proceso se lleva a cabo en lugares donde se opera con materiales peligrosos, ya que
permite el trabajo de manera segura a los ingenieros u operadores. Otra razn a tomar en
cuenta es que se pueden controlar varias plantas desde una localizacin central, donde los
puntos de operacin de los controladores pueden cambiarse al momento. En este tipo de
sistemas se aplica la topologa Cliente/Servidor, en la cual el servidor se encuentra en el sitio
del sistema a controlar, y el cliente est situado en la localizacin que tenga el usuario
(Guzmn 2002).
Por lo general en este tipo de control, el cliente pasa la seal correspondiente al punto
de operacin r(t) al servidor, el mismo la recibe y realiza los cambios que se requieran en el
controlador. Luego el servidor transmite al cliente la seal de salida del sistema, y(t), la cual el
operador puede observar de acuerdo al tipo de visualizacin que se tenga. El Servidor est
situado cerca del controlador y transfiere a ste los parmetros que han sido recibidos desde el
computador del cliente. El controlador calcula la seal de comando basado en la seal de
referencia y los parmetros pasados por el cliente y la respuesta del sistema (Guzmn 2002).

Figura 1.7. Esquema de un sistema controlado a travs de Internet.

Para realizar el intercambio de informacin entre servidor y clientes, se necesitan


protocolos altamente confiables que resuelvan el problema de la conectividad. Con este fin

18
generalmente se utiliza TCP/IP (Transmission Control Protocol/Internet Protocol), el cual
esta orientado a la conexin para servicio full duplex y garantiza el flujo de los datos. En caso
de perdida de datos, TCP solicita la retransmisin y reordena la secuencia de los paquetes.

1.8. MODELO DE REFERENCIA OSI


Son un conjunto de normas para estandarizar los sistemas abiertos. Fueron introducidas por la
Organizacin Internacional de Normas (ISO, International Standards Organization), el
nombre proviene del ingls Open Systems Interconnection. Est compuesto de siete capas o
niveles. Cada una de las mismas desempea una funcin bien establecida y opera segn un
protocolo definido. El protocolo de cada capa es independiente de las dems. El flujo de
informacin entre capas se realiza en forma vertical (Angulo, 1999).
En forma general, las tres capas inferiores dependen de la red, la cuarta capa se
encarga del transporte de datos de una mquina a otra y las tres capas superiores estn
orientadas a las aplicaciones (programas) (Figura 1.8).

7
Aplicacin

6
Presentacin

5
Sesin

4
Transporte

3
Red

2
Enlace

1
Fsica

Figura 1.8. Modelo de referencia OSI

19
1.8.1. Nivel fsico

Se encarga de las tareas de transmisin fsica de las seales elctricas entre los diferentes
sistemas. Define el nivel de tensin que debe utilizarse para representar un bit 1, cual para un
bit 0; tiempo de duracin de un bit; si la transmisin se puede efectuar simultneamente en
ambas direcciones o no; cmo se establece la conexin inicial y cmo se interrumpe cuando
ambos lados han finalizado la transmisin; define el tipo de conector de red y para que sirva
cada una y en general con todo lo que tiene que ver con el aspecto fsico material de conexin
entre dispositivos (Angulo, 1999).
1.8.2. Nivel de enlace

Es el primero de la pila OSI que se basa en software, algoritmos y protocolos. Su misin


principal es dar fiabilidad a la transmisin de las seales elctricas que proporciona el nivel
fsico, una manera de realizar esto es dividiendo el flujo de informacin en tramas o paquetes
que pueden tener un tamao variable. Se aaden bits adicionales a los que forman el mensaje
para poder detectar errores de transmisin y pedir su retransmisin en caso de ser necesario.
Otra de las funciones de este nivel es evitar que un transmisor rpido sature de datos a un
receptor lento en un determinado momento, esto se evita si el transmisor, de alguna manera,
conoce el espacio disponible en el buffer del receptor en cada instante (Angulo, 1999).
1.8.3. Nivel de red

Permite que pueda haber ms de dos mquinas involucradas en las interconexiones, ya que se
ocupa de que los paquetes que salen del transmisor lleguen al destino final, aunque el emisor y
el receptor no estn adyacentes. Si slo se cuenta con el nivel de enlace, esto no sera posible
ya que este solo se ocupa de que los bits lleguen de un lado a otro, por lo tanto, slo permite
interconectar dos mquinas. Para poder interconectar ms de dos mquinas, necesitamos
identificarlas y conectarlas de alguna manera. sta es la tarea del nivel de red. La asignacin
de direcciones es uno de los conceptos bsicos del nivel de red. Esto le permite decidir cul de
los mltiples terminales conectados es el destinatario final de cada paquete (Angulo, 1999).

20
1.8.4. Nivel de transporte

Permite una conexin fiable sobre cualquier tipo de red. La funcin principal de este nivel
consiste en asegurar la calidad de transmisin entre los terminales que utilizan la red, lo que
implica recuperar errores, ordenar correctamente la informacin, ajustar la velocidad de
transmisin de la informacin (control de flujo), entre otras (Angulo, 1999).
1.8.5. Niveles de sesin, presentacin y aplicacin

La arquitectura Internet delega todos los trabajos por encima de transporte a la aplicacin. No
obstante, en el modelo OSI estn definidos como tres niveles diferentes e independientes, con
atribuciones propias. El nivel de sesin es el encargado de gestionar las conexiones de larga
duracin, la recuperacin de cadas de red de manera transparente. El nivel de presentacin se
encarga de conseguir que las diferentes plataformas (sistemas operativos, procesadores, etc.)
se puedan entender al conectarse por medio de una misma red. En el nivel de aplicacin
residen los programas. En este nivel se encuentran los servidores y tambin los clientes que
acceden a estos ltimos, etc (Angulo, 1999).

1.9. ESTRUCTURAS DE PROTOCOLOS EN INTERNET

Figura 1.9. Modelo Internet

El modelo Internet gira en torno a los protocolos TCP/IP. IP es un protocolo que proporciona
mecanismos de interconexin entre redes de rea local y TCP proporciona mecanismos de

21
control de flujo y errores entre los extremos de la comunicacin. No se trata de una
arquitectura de niveles formal como la pila OSI. De hecho, se puede considerar que el modelo
de la red Internet consta slo de cuatro partes o niveles tal como se puede observar en la figura
1.9 (Angulo, 1999).
1.9.1 Capa De Acceso a La Red

Es la ms baja de las capas del protocolo. Corresponde a los tres niveles ms bajos del modelo
OSI (Red, Enlace y Fsica). Los protocolos de esta capa suministran al sistema los medios para
entregar los datos a otros dispositivos. Contrario a otros protocolos de alto nivel, estos
protocolos deben conocer los detalles de la estructura de los paquetes, direccionamiento, etc.
Entre las funciones a este nivel tenemos (Angulo, 1999).

Encapsulamiento de paquetes IP en las tramas transmitidas por la Red.

Correspondencia entre las direcciones IP y las direcciones fsicas Ethernet.

Define el protocolo ARP (Address Resolution Protocol, Protocolo de


Resolucin de Direcciones). Este protocolo hace la equivalencia entre las
direcciones IP y las direcciones fsicas Ethernet.

Ofrece la capacidad de acceder a cualquier red fsica, o sea, brinda los recursos
que se deben implementar para transmitir datos a travs de la red.

1.9.2. Nivel IP o nivel Internet

Este nivel confiere unidad a todos los miembros de la red y, por consiguiente, es el que
permite que todos se puedan interconectar. El direccionamiento y la asignacin de direcciones
constituyen sus principales funciones. Todos los equipos conectados a Internet implementan
este nivel. El protocolo IP no es capaz de recuperar tramas perdidas, ni de garantizar que las
tramas se entregarn en el orden correcto, puesto que los paquetes pueden seguir caminos
diferentes y, por tanto, sufrir retardos diferentes, ni que el ritmo de recepcin sea el adecuado
para que el receptor procese convenientemente los datos. Dentro de este nivel se define el
protocolo ICMP (Internet Control Message Protocol, Protocolo de Mensajes de Control de

22
Internet), el cual se utiliza para enviar mensajes de error, indicando por ejemplo que un
servicio determinado no esta disponible o que un router no puede ser localizado (Angulo,
1999).
1.9.3. Capa De Transporte

Esta capa se encuentra ubicada arriba de la capa Internet. El objetivo principal del nivel de
transporte es establecer una comunicacin extremo a extremo a travs de una red. Oculta a los
niveles altos del sistema el tipo de red al que est conectado el Terminal. Los protocolos ms
importantes de esta Capa son (Angulo, 1999):
TCP (Transmission Control Protocol, Protocolo de Control de Transmisin). Este
protocolo proporciona fiabilidad a la aplicacin; es decir, garantiza la entrega de toda la
informacin en el mismo orden en que ha sido transmitida por la aplicacin de origen. Para
conseguir esta fiabilidad, el protocolo TCP proporciona un servicio orientado a la conexin
con un control de flujo y errores. Para proporcionar un servicio fiable a la aplicacin, el
protocolo TCP se basa en los principios siguientes (Angulo, 1999):

Transmisin libre de error. Este protocolo debe entregar a la aplicacin de destino


exactamente la misma informacin que le entreg la aplicacin de origen. De hecho, se
trata de una entrega casi libre de errores, puesto que puede haber algunos que un
mecanismo de deteccin de errores no pueda detectar.

Garanta de entrega de la informacin. Este protocolo garantiza que toda la


informacin transmitida por la aplicacin de origen se entregue a la aplicacin de
destino. Si no es posible, el TCP debe avisar a la aplicacin.

Garanta de mantenimiento de la secuencia de transmisin. Se garantiza la entrega del


flujo de informacin en el mismo orden en que le fue entregado por la aplicacin de
origen.

Eliminacin de duplicados. Se garantiza que slo se entregar una copia de la


informacin transmitida a la aplicacin de destino. En caso de que reciba copias a

23
causa del funcionamiento de la red o de los protocolos que se implementan por debajo
del nivel de transporte, este protocolo se encargar de eliminarlas.
UDP (User Datagram Protocol, Protocolo de Datagrama del usuario). Es un protocolo
NO orientado a conexin que usa el IP para el transporte de mensajes entre mquinas.
Distingue destinos mltiples dentro de un mismo host, por lo que, varias aplicaciones pueden
usar simultneamente (multiplexaje) los servicios del UDP. El programa de aplicacin que usa
UDP debe ser responsable de la confiabilidad incluyendo prdida de mensajes, duplicacin,
retardos, entrega fuera de secuencia y prdidas de conexin. Se basa en la asignacin de
puertos para atender diferentes aplicaciones (Angulo, 1999).
1.9.4. Nivel de Aplicacin

El nivel de aplicacin es el nivel en el cual los programas se comunican con otros programas a
travs de la red. Los procesos que acontecen en este nivel son aplicaciones especficas que
pasan los datos codificados de acuerdo con un protocolo estndar. Algunos programas
especficos se considera que se ejecutan en este nivel. Estos programas y sus correspondientes
protocolos incluyen a HTTP (HyperText Transfer Protocol), FTP (Transferencia de archivos),
SMTP (correo electrnico), DNS (Resolucin de nombres de dominio) entre otros. Una vez
que los datos de la aplicacin han sido codificados en un protocolo estndar del nivel de
aplicacin son pasados hacia abajo al siguiente nivel de la pila (Angulo, 1999).

1.10. SERVIDOR WEB


Es un programa que implementa el protocolo HTTP. Este protocolo esta diseado para
transferir pginas Web o pginas HTML (HyperText Markup Language), que por lo general
estn conformados por textos complejos con enlaces, formularios, figuras, botones entre otras
cosas (Deitel, 2004).
Este programa se ejecuta continuamente en un computador, aunque por lo general
tambin se le denomina servidor Web al computador que ejecuta el programa, mantenindose

24
a la espera de peticiones por parte de un cliente y que responde a estas peticiones
adecuadamente, mediante una pgina Web que se exhibir en el navegador (Deitel, 2004).
El servidor Web se mantiene a la espera de peticiones HTTP por parte de un cliente
HTTP que por lo general se conoce como navegador. Cuando un cliente accede a una pgina
Web, esta realizando una peticin HTTP al servidor que contiene dicha pgina, a lo cual el
mismo le responde enviando el cdigo HTML con el contenido de la pgina que el cliente
solicita. El navegador del cliente es el encargado de interpretar dicho cdigo y presentar la
pgina en pantalla, en el caso que la pgina contenga aplicaciones del tipo JavaScript, las
mismas son ejecutadas en el computador del cliente, en este caso el servidor proporciona el
cdigo de las aplicaciones al cliente y ste, mediante el navegador, las ejecuta (Deitel, 2004).

1.11. INTERFAZ DE ENTRADA COMN


Este termino proviene del ingls Common Gateway Interface (CGI), el mismo provee una
herramienta importante que permite a un cliente remoto solicitar datos, a travs de su
explorador Web, de un programa ejecutado en un servidor Web. Es un mecanismo de
comunicacin entre el servidor Web y una aplicacin externa. Las aplicaciones que se ejecutan
en el servidor reciben el nombre de CGI (Van Der Henst, 2001).
Este tipo de aplicaciones son una de las maneras prcticas de crear contenido dinmico
en pginas Web. En una aplicacin CGI, las solicitudes hechas por el cliente, son pasadas por
el servidor a un programa externo. El programa externo suele usar lenguajes script (Conjunto
de instrucciones que permiten la automatizacin de tareas creando pequeas utilidades). La
salida de este programa es enviada al cliente en lugar del archivo esttico tradicional HTML.
El CGI permite comunicar aplicaciones externas con los servidores de informacin, tales
como servidores HTTP o Web. Esta importante herramienta permite convertir al clsico
documento esttico HTML en una potente herramienta que permite generar informacin
dinmica en tiempo real (Van Der Henst, 2001).

1.12. JAVASCRIPT

25

JavaScript es un lenguaje de programacin que no requiere compilacin, el cual es utilizado


principalmente en pginas Web, utilizando

una sintaxis semejante a la del lenguaje C.

Tradicionalmente, se utiliza en pginas Web HTML para realizar tareas y operaciones en


aplicaciones en el lado del cliente, sin acceso a funciones del servidor. JavaScript es ejecutado
en la localizacin del usuario al mismo tiempo que las sentencias van descargndose junto con
el cdigo HTML. Todos los navegadores modernos interpretan el cdigo JavaScript integrado
dentro de las pginas Web (Deitel, 2004).
Este tipo de lenguaje puede ser incluido en cualquier documento que termine
traducindose en HTML en el navegador del cliente. Aunque es posible incluir cdigo
JavaScript directamente en una estructura HTML esto no es lo que generalmente se hace, por
lo general el mismo se incluye como un archivo externo, tanto por cuestiones de accesibilidad,
como practicidad y velocidad en la navegacin (Deitel, 2004).
Para finalizar, el mdulo sbc65ecr, permite la creacin de pginas Web que incluyan
cdigo de tipo JavaScript y aplicaciones de tipo CGI. Esto es utilizado debido a que, usando el
mdulo, se puede incluir en pginas Web informacin que se actualiza en tiempo real, para lo
cual se requiere del uso de estas herramientas. Mas adelante, en el captulo 3 se explica como
son utilizadas estas herramientas para la inclusin de contenido dinmico en pginas Web
almacenadas en el mdulo sbc65ecr.

CAPTULO II
DESCRIPCION DE LA ARQUITECTURA

En este captulo se hace una descripcin de la arquitectura que integra el sistema supervisorio,
es decir, los componentes de hardware y software que lo conforma.

2.1. COMPONENTES DE HARDWARE


En la figura 2.1 se observan los componentes que conforman el sistema diseado, estos son:
el horno, el termopar, el circuito de acondicionamiento de seal, el microcontrolador, el
circuito de acoplamiento de seal, el rel de estado slido, el servidor Web y el computador
del cliente.

Figura 2.1. Componentes del Sistema

2.1.1. Horno

El mismo es un horno elctrico de resistencias, el cual tiene desconectado el termostato, por lo


tanto, no tiene control de la temperatura por si mismo, representando un sistema a lazo abierto,

27
las caractersticas elctricas del horno son las siguientes:

Potencia nominal:

1450 W

Voltaje de alimentacin: 120 V

Temperatura mxima:

500 C

2.1.2. Termopar

Para sensar la temperatura del horno se utiliza un termopar tipo K, el cual tiene un rango de
medicin desde -200 C hasta 1250 C. Este rango es bastante amplio en comparacin con el
rango de temperatura entre las cuales opera el horno. Otra caracterstica de este tipo de
termopar es que presenta alta linealidad en el rango de medida y presenta una exactitud de
0.75% con respecto a fondo escala para valores positivos (1250 C) (Crdenas 1997).
2.1.3. Acondicionamiento de seal

Para acondicionar la seal de salida que entrega el termopar y poder acoplarla al convertidor
analgico digital (ADC) del microcontrolador, se utiliz el circuito integrado AD595 de
Analog Devices, el cual internamente contiene un amplificador de instrumentacin y adems
realiza compensacin para unin de referencia diferente de 0 C. El amplificador es calibrado
en fbrica para operar con termocuplas tipo K y para presentar una resolucin en la salida de
10 mV/C. Operando con una alimentacin simple de 5V el circuito puede operar
adecuadamente en un rango de 0 C a 300 C, si se alimenta con una fuente dual de 15V el
circuito permite la operacin adecuada en todo el rango de temperaturas de la termocupla tipo
K. Entre las aplicaciones para el AD595 se tienen: controlador de punto de operacin; circuito
de alarma; termmetro Celsius. Estas y otras caractersticas del AD595 se encuentran
explicadas con ms detalles en la hoja de datos del dispositivo (Analog Devices, 1999).
Para acondicionar la seal proveniente de la termocupla instalada en el horno, se uso la
configuracin bsica para fuente simple de 5 V, con la cual se produce un voltaje a la salida
que se corresponde con la ecuacin 2.1 mostrada a continuacin (Analog Devices, 1999).

28
Salida AD595 = (Voltaje Tipo K + 11V) x 247.3 [mV]

(2.1)

El Voltaje Tipo K corresponde al voltaje tabulado correspondiente a la temperatura


actual en la unin de medicin de la termocupla.
2.1.4. Microcontrolador

Se seleccion el microcontrolador PIC 18f452 de Microchip al cual se le coloc un cristal


de 20MHz y se realiz un programa que ejecuta las siguientes acciones:

Lectura de la seal proveniente del AD595 usando para tal fin el canal AN0 del ADC
del microcontrolador configurado para una resolucin de 10 bits y colocando Vref+ =
3 V y Vref- = 0 V, con lo cual se obtiene una resolucin de 2.93 mV por cada bit que
se genera de la conversin.

Implementacin del algoritmo de un controlador PID discreto, usado para calcular el


ciclo de servicio adecuado para el modulador de ancho de pulso PWM (del ingls
Pulse Width Modulation), que acta sobre el rel de estado slido.

Implementacin del algoritmo para la generacin de una seal PWM de periodo 2 s,


usando para tal fin la interrupcin por desbordamiento del TIMER2, con ciclo de
servicio variable en pasos de 20 ms.

Uso del mdulo USART (del ingls Universal Synchronous/Asynchronous Receiver


Transmitter), configurado en el modo de transmisin asincrnica y el protocolo RS232 para realizar el intercambio de datos con el servidor Web.

Despliegue del valor de temperatura actual en el horno y valor del punto de operacin
seleccionado en pantalla LCD. Adems se despliegan alternativamente cada 3
segundos los valores de los parmetros del controlador (Kp, i, d), y el modo de
operacin en que se encuentra actualmente el sistema (Modo local o Modo Internet
segn sea el caso).

Cuando el sistema se encuentra en modo local el microcontrolador recibe desde un


teclado matricial 3x4 el valor para el punto de operacin del horno y los parmetros del
controlador (Kp, i, d).

29

Cuando el sistema se encuentra en modo local, es posible configurar el controlador


para que opere en Modo Manual en Modo Auto, pulsando la tecla # en el teclado
matricial.
En la figura 2.2 se observa el diagrama del circuito que conforman el

microcontrolador, el teclado matricial, la pantalla LCD, el termopar, la salida PWM que va al


circuito de acoplamiento de seal (figura 2.3), el circuito de acondicionamiento de seal y la
interface RS232 para la comunicacin con el servidor Web.

Figura 2.2. Diagrama del circuito alrededor del microcontrolador

30
2.1.5. Circuito de acoplamiento de seal

Para realizar el acoplamiento de seal entre la salida PWM en el microcontrolador (PIN_C1) y


el rel de estado slido se utiliz un transistor 2N3904 y un TIP29C (ambos NPN) conectados
en cascada como se muestra en la figura 2.3. La seal de salida del circuito que excita el rel
de estado slido (figura 2.4), es tomada en el colector del transistor Q2.

Figura 2.3. Circuito de Acoplamiento

2.1.6. Rel

Como elemento final de control se utiliza un rel de estado slido modelo SS-20-25 de
Intercontinental Industries, el circuito interno simplificado se muestra en la figura 2.4. Este
equipo esta constituido por un triac y un circuito de disparo por deteccin de cruce por cero.
Sus caractersticas son (Chacn, 2004):

Seal de control

(DC)

(0 a 20) V

Minino valor para apertura (DC)

4V

Seal de Potencia

(AC)

(0 a 220) V

Mxima corriente de carga (AC)

25 A

31

Figura 2.4. Rel de estado slido (Chacn, 2004)

2.1.7. Servidor Web

Para la implementacin del servidor Web se uso el mdulo sbc65ecr (Figura 2.5), que posee
una interface Ethernet con velocidad de 10Mbs, adems implementa un servidor HTTP y la
pila TCP/IP, lo cual convierte al mdulo completo servidor Web usando para ello un
microcontrolador PIC18F6627 una memoria EEPROM de 512Kb y el controlador de Ethernet
RTL8019AS. El mdulo puede ser conectado a cualquier red Ethernet 10/100Mbs (Ver Anexo
1).

Figura 2.5. Mdulo sbc65ecr (Modtronix Engineering, 2007)

El servidor HTTP incluido en el mdulo sbc65ecr no implementa toda la funcionalidad HTTP,


esto debido a la capacidad de memoria disponible y el tipo de hardware utilizado. El servidor
incorpora las siguientes caractersticas:

32

Soporta mltiples conexiones HTTP.

Soporta pginas Web alojadas en la memoria interna del microcontrolador o en la


memoria EEPROM externa.

Soporta generacin de contenido dinmico para pginas Web usando comandos CGI
para tal fin.

Incluye dentro de la pila TCP/IP los protocolos: MAC (Media Access Control, Control
de Acceso al Medio), IP, ARP, ICMP, TCP, UDP, HTTP, FTP, DHCP (Dinamic Host
Configuration Protocol, Protocolo Configuracin Dinmica de Servidor), DNS.
El microcontrolador de a bordo presenta las siguientes caractersticas que pueden ser

tomadas en cuenta por el usuario para elaborar sus aplicaciones:

Tiene 32 pines de entrada salida que pueden ser monitoreados, configurados y


actualizados a travs de pginas Web. 12 de estos pines pueden ser configurados como
entradas analgicas de 10 bit de resolucin y 4 pueden usarse como salidas PWM de
10 bit de resolucin.

Programado usando un bootloader (Cargador de Arranque, programa sencillo que


permite descargar programas al PIC), lo cual permite actualizar el programa o las
pginas Web a travs de la red o Internet.

Internamente tiene una memoria FLASH de 98Kbytes y de manera externa controla


una memoria EEPROM de 512Kbytes, de la cual la pila TCP/IP usa menos de la
mitad, lo cual hace que el usuario tenga a su disposicin el resto del espacio para el
almacenamiento de pginas Web o modificar el programa que implementa el servidor.

Interface RS232 a travs de un conector tipo Molex de 3 pines.


Estas y otras caractersticas del mdulo sbc65ecr son detalladas en la hoja de datos,

disponible en la pgina Web oficial del fabricante (Modtronix Engineering, 2007).


2.1.7.1. Conexin del mdulo sbc65ecr con el PIC18F452. Para el intercambio de datos entre
el mdulo y el PIC18F452 se utiliz el mdulo USART de ambos microcontroladores
aplicando el protocolo RS-232. Dado que el mdulo se encuentra conectado a la caja de

33
expansin IOR5E de Modtronix Engineering (2005) (Figura 2.6), se modific la tapa posterior
para incluir un conector tipo jack stereo, el cual es acoplado internamente con el conector
MOLEX3-1 (CON3) (Ver Anexo 2), que es utilizado para realizar la comunicacin serial con
el controlador el cual posee un conector del mismo tipo. En la figura 2.7 se observa la
configuracin de los pines en el conector plug stereo del cable que sale desde el mdulo
sbc65ecr.

Figura 2.6. Caja de Expansin IOR5E con la modificacin realizada

Figura 2.7. Diagrama de conexin en el conector plug stereo

2.2. COMPONENTES DE SOFTWARE


2.2.1. PIC18F452

2.2.1.1. Programa Principal. Al comenzar la ejecucin del programa, se configuran los


puertos, el mdulo ADC, USART, temporizadores, se cargan de la memoria EEPROM los
parmetros del controlador y finalmente se habilitan las interrupciones a utilizar
(INT_TIMER1 e INT_TIMER2), el diagrama de flujo correspondiente al programa principal se
encuentra en la figura 2.8.

34
Cuando el microcontrolador entra en el bucle infinito, continuamente se monitorea el
estado del PIN_C5, el cual segn sea su valor 1 0, indica que el sistema se encuentra
operando en modo Internet o local respectivamente.
En modo local, el sistema continuamente se encuentra a la espera de que un valor sea
introducido desde el teclado matricial, cuando esto sucede y el valor introducido corresponde a
un nmero (0 a 9), entonces se espera un nuevo nmero hasta completar una cantidad de tres
cifras que corresponde al nuevo valor para la temperatura de referencia en el controlador, el
programa permite como valor mximo 250 C y 30 C como valor mnimo, si se introduce la
cifra 000 se esta indicando al sistema que el horno debe ser apagado. Cuando el valor
introducido corresponde a *, entonces el sistema entra a un men donde el operador debe
introducir nuevos valores para Kp, i y d, los cuales son almacenados en la memoria
EEPROM interna. Los valores introducidos deben estar dentro del rango indicado en la tabla
2.1.

Tabla 2.1. Valores vlidos para Kp, Ti y Td

Parmetro

Rango de valores que


pueden ser
introducidos

Se multiplica por

Valor final
Usado en el
Controlador

Kp

( 0 a 50 )

0.1

(0a5)

( 1 a 255 )

10

( 10 a 2550 )

( 0 a 200 )

( 0 a 200 )

Si desde el teclado se introduce el valor #, el sistema entra a un Men, en el cual, si el


usuario, pulsa el valor 0 el control se configura como Modo Manual, en este caso el usuario
tiene control sobre el ciclo de servicio del mdulo PWM, mas no sobre la temperatura de
referencia para el horno, es decir el sistema queda a lazo abierto. En el men si el usuario en
vez de pulsar la tecla 0 pulsa cualquier otra tecla configura al controlador en modo
automtico.
Cuando el sistema se encuentra operando en modo Internet, se encuentra a la espera de
la recepcin de una cadena de tres caracteres, los cuales segn sea el caso permiten modificar

35
los parmetros del controlador, el setpoint o indican que deben ser enviados por el puerto serie
cualquiera de los parmetros mencionados. En la figura 2.8 se observa como en el programa se
hace el tratamiento de la cadena de caracteres para determinar el tipo de accin a realizar.

Figura 2.8. Diagrama de flujo correspondiente al programa principal

36
En la tabla 2.2 se presentan las posibles combinaciones en las cadenas de caracteres
recibidas por el puerto serie, cuando el sistema esta en modo Internet, y adems el tipo de
accin a realizar segn sea el caso. Cualquier cadena de caracteres diferente a las presentadas
en la tabla ser descartada.

Tabla 2.2. Posibles cadenas de caracteres recibidas desde el puerto serie


Cadena de caracteres
Recibida

Accin a realizar

xxx

Enva por el puerto serie el valor de la temperatura actual dentro


del horno

xax

Enva por el puerto serie el valor de la temperatura de referencia


para el controlador

xb*

Almacena en memoria un nuevo valor para la temperatura de


referencia. El valor viene dado por el equivalente decimal del
caracter * que representa cualquier caracter en cdigo ASCII

xc*

Multiplica por 0.1 el valor dado por el equivalente decimal del


caracter * que representa cualquier caracter en cdigo ASCII y
luego lo almacena como un nuevo valor para Kp.

xdx

Enva por el puerto serie el valor actual del parmetro Kp en el


controlador

xe*

Multiplica por 10 el valor dado por el equivalente decimal del


caracter * que representa cualquier caracter en cdigo ASCII y
luego lo almacena como un nuevo valor para i.

xfx

Enva por el puerto serie el valor actual del parmetro i en el


controlador

xgx

Enva por el puerto serie el valor actual del parmetro d en el


controlador

xh*

Almacena en memoria un nuevo valor para el parmetro d, el


cual viene dado por el equivalente decimal del caracter * que
representa cualquier caracter en cdigo ASCII.

Estando el sistema en modo local o en modo Internet, se puede observar que dentro del
programa principal continuamente se encuentra a la espera de recibir comandos que permitan
cambiar el tipo de accin del controlador o cambiar el punto de referencia para el controlador,

37
bien sea a travs del puerto serie cuando se encuentra operando en modo Internet, o a travs
del teclado matricial cuando se opera en modo local. El algoritmo que implementa el
controlador PID, el monitoreo de temperatura y la salida PWM son controladas mediante las
interrupciones por desbordamiento de los temporizadores del TIMER1 y el TIMER2, esto
debido a que se requiere que estas funciones se ejecuten a intervalos constantes de tiempo.
Antes de proseguir con la explicacin de las funciones que se ejecutan dentro de las rutinas de
atencin a cada una de las interrupciones, es importante conocer cmo esta operando el
microcontrolador, cual es la frecuencia del cristal, configuracin del mdulo USART, mdulo
ADC y cul es el periodo de desbordamiento de cada uno de los temporizadores utilizados.
Esta informacin se encuentra plasmada en la tabla 2.3.

Tabla 2.3. Configuracin del microcontrolador


Velocidad del reloj

Mdulo ADC

20MHz

10 bits de resolucin
1 Entrada analgica
Vref+ = 3 V
Vref- = 0 V

RS232

9600 baudios
8 bits de datos
1 bit de parada
Sin bit de paridad

TIMER1

Desbordamiento: 13.1 ms.

TIMER2

Periodo de Interrupcin: 10.0 ms.

2.2.1.2. Rutina de interrupcin por desbordamiento del TIMER1. Esta funcin es utilizada
para: controlar las lecturas de temperatura en el interior del horno utilizando el mdulo ADC;
llamar a la funcin que implementa el controlador PID cada segundo; imprimir en pantalla los
valores de la temperatura actual, la temperatura de referencia y alternativamente ir
desplegando los valores de los parmetros del controlador y el modo de operacin actual. La
rutina de atencin a esta interrupcin se encuentra detallada en el diagrama de flujo de la
figura 2.9.

38

Figura 2.9. Rutina de interrupcin por desbordamiento del TIMER1

La temperatura en el horno es medida y almacenada temporalmente en la variable temp


cada vez que se ejecuta la funcin de interrupcin (cada 13.1 ms aproximadamente), a su vez
el valor ledo es acumulado en la variable sum para que cuando hayan transcurrido 80

39
llamados a la funcin (80 x 13.1 ms = 1048 ms), se calcule el promedio para los valores de
temperatura ledos en ese tiempo. Esto se realiza para disminuir el efecto del ruido en las
lecturas realizadas, lo cual no tiene un efecto considerable en las medidas debido a que los
procesos trmicos son lentos por naturaleza. Una vez que se ha calculado el valor promedio y
se tiene un valor para la temperatura de referencia diferente de 0 C, se procede a llamar a la
funcin controlador para calcular el ciclo de servicio para la salida PWM. En la figura 2.10 se
observa el despliegue en la pantalla LCD en distintos instantes de tiempo en la cual
alternativamente se muestran los parmetros del controlador y el modo de operacin del
sistema.

Figura 2.10. Despliegues en pantalla LCD


En las 4 imgenes se observa en la parte superior el valor de la
temperatura actual (106.4 C), el valor de la temperatura de referencia
(110 C) y en la parte inferior el valor de Kp (0.6) y i (600 s) (a), el valor de
d (0 s) (b), el modo de operacin: local (c) Internet (d), segn sea el caso

2.2.1.3. Funcin controlador. Esta funcin es llamada desde la rutina de atencin a la


interrupcin por desbordamiento del TIMER1 cada segundo. Dentro de esta funcin se ejecuta
el algoritmo que implementa el controlador PID discreto, el cual calcula el valor para el ciclo
de servicio del PWM, los parmetros para el controlador son cargados desde la memoria
EEPROM al inicio del programa principal (Figura 2.8), y el valor de la temperatura de
referencia es introducido por el operador usando el teclado matricial (si se encuentra en modo
local), a travs de un computador (si se encuentra en modo Internet). En la figura 2.11 se
muestra el diagrama de flujo para esta funcin.

40

Figura 2.11. Diagrama de Flujo para la funcin controlador

41
Tal como se puede observar en la figura 2.11 esta funcin implementa un controlador
PID discreto. Es posible convertir fcilmente este controlador en un controlador PI, PD P
introduciendo los valores mostrados en la tabla 2.4 para cada uno de los parmetros, desde el
computador o desde el teclado matricial segn sea el modo de operacin en que se encuentre
el sistema.

Tabla 2.4. Valores a ser introducidos para los diferentes tipos de controladores

Kp
P

i = 2550
d = 0

Kp
PI

i
d = 0

Kp
PD

i = 2550
d

Kp
PID

i
d

2.2.1.4 Rutina de interrupcin por desbordamiento del TIMER2: esta funcin es usada para
generar la seal PWM que acta sobre el elemento final de control (Rel de estado solido). El
TIMER2 est configurado para que tenga un periodo de interrupcin de 10 ms, de esta manera
se tiene una base de tiempo constante para controlar el ciclo de servicio de la salida PWM. El
periodo de la seal de salida se configuro para que tuviese un valor constante (2 s), y se
permiten variaciones para el ciclo de servicio en pasos de 20 ms cada uno. El valor del ciclo
de servicio (variable CS), proviene de la funcin controlador (figura 2.11). El diagrama de
flujo para la funcin de atencin a la interrupcin se muestra en la figura 2.12.

42

Figura 2.12. Interrupcin por desbordamiento del TIMER2

2.2.2. Mdulo sbc65ecr

El programa alojado en el microcontrolador PIC18F6627 implementa la pila TCP/IP. Cuando


comienza la ejecucin del programa principal, primeramente se configura el mdulo de
acuerdo al tipo de protocolos que sern implementados (FTP, HTTP, DHCP, DNS, entre
otros), adems de configurar el mdulo ADC, mdulo PWM, contadores, puerto serial y las
interrupciones a utilizar. Cuando la aplicacin creada por el usuario del mdulo es la
encargada de configurar el mdulo ACD, PWM, USART, configuracin de los puertos de
entrada / salida, entonces el programa carga desde la memoria EEPROM interna los valores
que el usuario almacen la ultima vez que configur el mdulo.

43
Seguidamente el programa implementa el men de configuracin (usando el puerto
serial, segn la configuracin que se tenga almacenada). Usando este men el usuario puede
configurar los parmetros de la red, as como tambin actualizar el programa y la pgina Web.
El programa permanece en este modo de configuracin durante 3 segundos, este tiempo puede
ser configurado por el usuario a travs de la pgina Web que el mdulo trae por defecto. Si el
usuario realiza algn cambio en la configuracin usando este men, el mdulo se reinicia, si
no se realiza ningn cambio, entonces transcurridos los 3 segundos se contina con la
ejecucin del programa.

Una vez que el sistema ha salido del modo de configuracin se inicializan los mdulos
que implementan los protocolos inherentes a la pila TCP/IP, adems del mdulo HTTP,
DHCP y FTP. Concluido esto, el programa entra en un bucle infinito dentro del cual
peridicamente se verifica si hay algn paquete entrante, para que el mismo sea procesado
segn al tipo de paquete que corresponda (Paquete TCP, IP, ICMP).

Tambin, dentro del bucle infinito se verifica si se ha recibido algn mensaje UDP,
para procesarlo y ejecutar la accin que corresponda, el mdulo puede ser configurado usando
este tipo de mensaje, as como tambin cambiar el valor de sus puertos entre otras cosas. Ms
adelante se explica el formato de este tipo de mensajes y el tipo de acciones que pueden ser
ejecutadas mediante el uso de los mismos.

Continuamente tambin se esperan peticiones HTTP realizadas por algn cliente,


procesndose la peticin de acuerdo al tipo que haya sido la misma. Cuando el tipo de peticin
involucra formularios de tipo GET, como se describe ms adelante, se est manejando
informacin dinmica dentro de las pginas CGI, por lo tanto, dentro del programa, se llama
continuamente a la funcin HTTPExecGetCmd, que se encarga de identificar el tipo de
variables que el cliente est solicitando, para de esta manera procesar la peticin enviando la
informacin solicitada. Ms adelante se explica qu tipo de comandos pueden ser solicitados a
travs de pginas CGI.

44
2.2.2.4. Monitoreo de las variables del controlador. El monitoreo de las variables se realiza
mediante el uso de comandos CGI, se cre un comando diferente para cada una de las
variables que se desea monitorear. Como se explic anteriormente, cuando un cliente hace una
peticin HTTP de tipo GET, entonces el programa llama repetidamente a la funcin
HTTPExecGetCmd tantas veces como comandos sean requeridos desde la pgina que el
cliente esta solicitando. Cuando se ha determinado que tipo de comando se esta solicitando, se
produce llamados a la funcin HTTPGetVar para que sta le enve el valor del comando. La
funcin devuelve el valor del comando enviando un caracter a la vez, por lo que la funcin es
llamada repetidas veces dependiendo del nmero de caracteres que tenga el valor del comando
solicitado.
Los comandos se identifican mediante un nombre con el formato nXX, donde n
especifica el grupo de la variable y puede tener cualquier letra del alfabeto y XX especifica el
valor de la variable (un nmero hexadecimal entre 00 y FF, ambos inclusive). El mdulo tiene
precargados una serie de comandos, mediante los cuales se puede monitorear el estado de los
puertos, de los mdulos, la configuracin de la red, puerto serial, entre otros. Los grupos de
variables desde la a hasta la j son usados para mostrar el valor de cualquier pin de los
puertos del PIC. El valor mostrado puede presentar diferentes formatos, los cuales se
especifican a continuacin en las tablas 2.5 y 2.6.

Tabla 2.5. Grupo de variables desde a hasta j

Grupo de Variables

Descripcin

Puerto A

b
c
d
e

Puerto B
Puerto C
Puerto D
Puerto E

Puerto F

g
h

Puerto G
Reservado para uso futuro

Reservado para uso futuro

45
Tabla 2.6. Valores de las variables para los grupos desde a hasta j

Valor de la Variable

Cadena de caracteres retornada por el servidor HTTP mostradas


en la pgina Web

00 - 07
10 - 17
20 - 27

Retorna '1' '0' dependiendo del estado del puerto


Retorna "on" "off" dependiendo del estado del puerto
Retorna "<!--" si el puerto es configurado como entrada

28 - 2f

Retorna "-->" si el puerto es configurado como entrada

30 - 37
38 - 3f
40 - 47

Retorna "<!--" si el puerto es configurado como salida


Retorna "-->" si el puerto es configurado como salida
Retorna "checked" si el puerto es configurado como salida

48 - 4f

Retorna "checked" si el puerto es configurado como entrada

50 - 57

Retorna "0" si el puerto es configurado como salida. Retorna "1" si


el puerto es configurado como entrada.

Por ejemplo si se escribe el comando %a02, entonces en la pgina Web se sustituir


este comando por el valor 1 0 dependiendo del valor del mismo.
Las variables en los rangos 20 a 27, 28 a 2f, 30 a 37 y 38 a 3f son usadas para la
generacin de comandos alrededor de cdigo HTML, por ejemplo si se tiene la siguiente lnea
en cdigo HTML:

%f21<img src="picture.jpg">%f29
Entonces se mostrar en la pgina la imagen cuyo nombre es picture.jpg slo si el
puerto F1 es configurado como salida, ya que de lo contrario la lnea de cdigo ser tratada
como un comentario.
En la tabla 2.7 se tiene el resto de grupos de variables que el mdulo trae por defecto.
Las variables definidas para cada uno de los grupos junto con su descripcin se encuentran
disponibles en la hoja de datos del mdulo sbc65ecr la cual puede ser descargada desde la
pgina Web del fabricante (Modtronix Engineering, 2007).

46
Tabla 2.7. Grupos de variables para el mdulo SBC65EC

Grupo de Variables
n

k
w
s

Descripcin
Es usado para mostrar el valor de cualquier
entrada analgica del PIC en diferentes
formatos dependiendo del valor de la variable
Usado para mostrar informacin de tipo
general, entre la que se encuentran los
parmetros de la red, nombre de usuario y
clave de acceso
Usado para mostrar el contenido de los bytes
de configuracin del sistema, es decir, los
valores de configuracin que se encuentran
almacenados en la memoria EEPROM
Usado para monitorear los parmetros de las
salidas PWM
Usado para mostrar informacin de
seguridad, esta informacin solo es mostrada
si se ha introducido el nombre de usuario y la
clave de acceso

Cuando se ha llamado por vez primera a la funcin HTTPGetVar, a la misma se le


enva un parmetro llamado ref cuyo valor es la constante HTTP_START_OF_VAR (0x000 es
el valor de la constante, en cdigo hexadecimal), de esta manera se identifica que es el primer
llamado a la funcin por lo que se procede a recopilar la informacin solicitada y a
almacenarla temporalmente como una cadena de caracteres en la variable strTmp aadindole
el caracter null (\0) al final de la cadena, cuando HTTPGetVar es llamada de nuevo se le
enva uno a uno cada caracter de la variable strTmp, cuando se detecta que se ha enviado el
caracter null entonces la funcin retorna la constante HTTP_END_OF_VAR (0xFFF es el
valor de la constante, en codigo hexadecimal), para indicar que ha finalizado la transmisin de
caracteres para la variable solicitada.
Para realizar el monitoreo de la temperatura y de las variables del controlador se cre
un nuevo grupo de variable, denominado z, y un valor de variable para cada uno de los
parmetros del controlador. En la tabla 2.8 se encuentra el valor de cada una de las variables y
una descripcin del tipo de informacin que es mostrada en la pgina Web cuando se solicita
cada una de las mismas.

47
Tabla 2.8. Valores de las variables para el grupo z

Valor de la variable

Descripcin

0x01

Valor del parmetro Setpoint en el controlador

0x02
0x03

Valor del parmetro Kp en el controlador


Valor del parmetro i en el controlador

0x04

Valor del parmetro d en el controlador

0x12

Valor actual de la temperatura en el horno

En la figura 2.13, se tiene el proceso ejecutado por la funcin HTTPGetVar cuando se


solicita informacin referente al monitoreo de la temperatura actual en el interior del horno. Se
tiene que cada caracter de la cadena que contiene el valor de la variable solicitada
(Temperatura actual del horno), es almacenado temporalmente en la variable val, de esta
manera cuando se retorna de la funcin se va construyendo el archivo con la pgina solicitada
por el cliente. La variable ref es utilizada por el programa para conocer a que posicin de la
cadena corresponde el caracter que ha sido enviado y adems para saber cuando ha finalizado
la informacin correspondiente a la variable solicitada.
En la figura 2.14 se encuentra el diagrama de flujo correspondiente a la funcin
mon_temp. Esta funcin se encarga de enviar por el puerto serie la cadena de caracteres xxx,
la cual hace que el controlador enve usando el mismo medio, la temperatura actual en el
interior del horno usando el formato tXXX.X\r, en donde t es un caracter utilizado para
identificar el inicio de la cadena, \r identifica el final de la misma y XXX.X representa el
valor de la temperatura actual que se est enviando. Cuando se retorna de la funcin, ya se
tiene almacenado el valor de la temperatura actual en la cadena de caracteres temperatura.
Las funciones para monitorear las variables Kp, i, d y setpoint, nicamente se
diferencian de la funcin mon_temp en la cadena que envan para solicitar al controlador
(Tabla 2.2), y en el caracter que identifica el inicio de la cadena, k, i, d y s
respectivamente, por lo tanto no se considera necesaria la colocacin de los diagramas de flujo
correspondientes.

48

Figura 2.13. Funcin HTTPGetVar ante la solicitud de la variable temperatura

49

Figura 2.14. Diagrama de flujo de la funcin mon_temp

2.2.2.5 Cambio en los parmetros del controlador. La manipulacin de los parmetros en el


controlador se puede realizar de dos maneras diferentes: enviando mensajes UDP al mdulo
usando el puerto 54123. El mdulo trae una serie de comandos predefinidos que permiten
cambiar la configuracin del mismo, en la tabla 2.9 se presentan algunos de los comandos para
la manipulacin de los puertos, una lista completa de los comandos se encuentra disponible en
la hoja de datos del fabricante del mdulo (Modtronix Engineering, 2007); la otra manera de
realizar cambios en los parmetros del controlador es mediante formularios de tipo GET en la
pgina Web diseada, siguiendo la sintaxis de name = value, en donde value representa el
nombre del comando a ser ejecutado.

50
La sintaxis de los comandos para el manejo de los puertos es la siguiente:

p es el grupo del comando y representa el puerto. Tiene un valor desde a hasta g

[x,y] debe ser reemplazo por x o y

[x-z] debe ser reemplazado por un valor en el rango desde x hasta z.

Tabla 2.9. Comandos para manejo de los puertos


Sintaxis del Comando

Descripcin

p=XX

Cambia el valor del puerto al valor hexadecimal dado. El valor dado (Parte XX del
comando) debe estar en maysculas. Por ejemplo:
a=8A pondr el puerto A al valor 0x8A

p[0-7]=[1,0]

Coloca a 1 o 0 el pin del puerto dado. Por ejemplo:


"a0=0" pondr a 0 el pin A0 (Puerto A, pin 0)
"f7=1" pondr a 1 el pin F7 (Puerto F, pin 7)

p[0-7]r=[1,0]

p[0-7]p=[0-9]

Igual al comando anterior, excepto que el cambio es guardado en la memoria


EEPROM y recordado al encender el mdulo de nuevo
En este caso el pin dado se coloca en un nivel lgico alto y luego a un nivel bajo. El
ancho del pulso especifica cuantos microsegundos el pin debe permanecer en alto. Si el
valor es cero, el pin se mantiene en alto por un tiempo mnimo el cual es usualmente
entre 200 ns y 400 ns. Por ejemplo:
"a0p=0" pondr a 1 el pin A0 y luego de 200 ns a 400ns se coloca a 0 de nuevo
"f7p=9" pondr a 1 el pin F7 y 9us despus lo coloca en bajo de nuevo

pc[0-7]=[1,0]

Configura el pin dado como entrada (1) como salida (0). La configuracin dada NO
ser recordada cuando se encienda de nuevo el mdulo. Por ejemplo:
"ac0=0" configura el pin A0 como salida.
"fc7=1" configura el pin F7 como entrada

pc[0-7]r=[1,0]

Igual al comando anterior, excepto que el cambio es guardado en la memoria


EEPROM y recordado al encender el mdulo de nuevo

Si se desea colocar a 1 el pin A2, se puede realizar de 2 maneras diferentes: la primera


de ellas se realiza escribiendo el siguiente comando en la barra de direcciones del explorador,
suponiendo que la direccin IP del mdulo es 10.1.0.1
http://10.1.0.1/?a2=1
O podemos enviar el siguiente mensaje UDP al puerto de comandos UDP del mdulo
a2=1

51
Se pueden enviar mltiples comandos separndolos entre ellos usando el caracter '&'.
Por ejemplo para colocar a 1 el pin A2, colocar a 0 el pin C0, podemos enviar el siguiente
mensaje UDP al mdulo, o escribir el comando en la barra de direcciones.
a2=1&c0=0
http://10.1.0.1/?a2=1&c0=0
Para el manejo del controlador del horno, se cre el grupo de comandos z. En la tabla
2.10 se encuentran los nombres de los comandos creados y una descripcin de los mismos.

Tabla 2.10. Comandos creados para cambios en los parmetros en el controlador

Nombre del comando

Descripcin

z1

Modifica el Setpoint para el controlador. El dato introducido debe ser 0 o


estar en un rango entre 30 C y 250 C. Luego que el dato es validado, se
enva por el puerto serie la cadena xb*, donde * representa el caracter
equivalente en cdigo ASCII del valor introducido.

z2

Modifica el valor de Kp para el controlador. El valor introducido debe


estar en el rango de 0 a 50. Luego que el dato es validado, se enva por el
puerto serie la cadena xc*, donde * representa el caracter equivalente en
cdigo ASCII del valor introducido. Cuando el valor es recibido en el PIC
del controlador, se divide entre 10, para ser usado.

z3

Modifica el valor de i para el controlador. El valor introducido debe estar


en el rango de 1 a 255. Luego que el dato es validado, se enva por el
puerto serie la cadena xe*, donde * representa el caracter equivalente en
cdigo ASCII del valor introducido. Cuando el valor es recibido en el PIC
del controlador, se multiplica por 10, para ser usado.

z4

Modifica el valor de d para el controlador. El valor introducido debe estar


en el rango de 0 a 200. Luego que el dato es validado, se enva por el
puerto serie la cadena xh*, donde * representa el caracter equivalente en
cdigo ASCII del valor introducido. Cuando el valor es recibido en el PIC
del controlador, es usado sin ninguna modificacin previa.

Dentro del programa principal, continuamente se chequea si hay algn mensaje UDP
para ser procesado, cuando se encuentra, el mensaje se descompone y. una vez que se conoce
el nombre del comando que debe ser ejecutado se llama a la funcin execNameValueCmd,
dentro de la cual se encuentran las diferentes acciones, de acuerdo al grupo al que corresponda
el comando introducido, y al nmero del mismo, segn corresponda. Esta funcin tambin

52
puede ser llamada cuando se realiza una peticin del tipo HTTP, y se detecta la solicitud de
ejecucin de un comando desde un formulario tipo GET cuando se estn procesando las
peticiones. La funcin recibe como parmetros, el nombre del parmetro (name), el valor dado
para el mismo (value) y una bandera que indica si el usuario tiene clave de administrador o no
(user), en el caso que se requiera para la ejecucin de ciertos comandos.
En la figura 2.15 se observa a modo de ejemplo cmo es la ejecucin de la funcin
execNameValueCmd cuando se recibe el comando z1, para colocar al controlador un nuevo
setpoint de 75 C. Slo se coloca el ejemplo en el caso de realizar un cambio en el setpoint, ya
que para realizar un cambio a cualquiera de los otros parmetros se realiza un procedimiento
donde solo cambia la validacin y la cadena de caracteres enviada.

Figura 2.15. Funcin execNameValueCmd para el comando z1

53
La funcin camsetp se encarga de verificar el valor introducido para el comando, y de
enviar la cadena de caracteres por el puerto serie, en la figura 2.16 se encuentra el diagrama de
flujo para esta funcin, siguiendo con el ejemplo del cambio del setpoint a 75 C

Figura 2.16. Funcin camsetp para un setpoint de 75 C

CAPTULO III
DISEO DE PGINAS WEB

En este captulo, se describe el tipo de archivos que pueden contener las pginas Web que se
almacenan en el mdulo, cmo se deben construir las mismas y cmo se cargan en el mdulo
sbc65ecr, tambin se explicar como se realiz el diseo de la pgina Web para el monitoreo
del sistema formado por el horno y el controlador.

3.1. TIPOS DE PGINAS WEB SOPORTADAS


El mdulo sbc65ecr soporta los siguientes tipos de archivos para la elaboracin de las pginas
Web:

CGI: este tipo de archivos son analizados por el servidor Web en busca de comandos

con el formato %nXX, los cuales son reemplazados con el correspondiente valor, como
se explic en el captulo anterior.

CSS: hojas de estilo, para separar la presentacin de la pagina de la estructura del

HTML.

GIF: archivo de imagen

HTM: archivo de hipertexto de contenido esttico.

JAR: es un tipo de archivo que permite ejecutar aplicaciones escritas en lenguaje

JAVA

JPG: archivo de imagen

JS: archivo con cdigo JavaScript, que pueden ser ledos desde cualquier navegador

Web

55

TXT: archivo de texto

WAV: archivo de sonido

Otro tipo de archivos pueden ser usados, en este caso el archivo ser enviado al
navegador del cliente de tal manera que el usuario lo reproduzca usando el programa adecuado
segn el tipo de archivo que corresponda.

3.2. CREACION DE PGINAS WEB


Para la creacin de pginas Web, el programador puede hacer uso de cualquiera de los
archivos antes mencionados, cuidando que los comandos CGI sean colocados nicamente en
archivos con la extensin cgi, ya que de lo contrario los mismos no sern reemplazados por el
valor correspondiente.
Para incorporar comandos CGI, el archivo con extensin cgi debe contener una cadena
de caracteres con el formato %nXX. Donde el caracter % es un caracter de control, n
representa el grupo de la variable y XX representa los dos dgitos del valor de la variable,
escrito en formato hexadecimal y en maysculas.
En el caso que el programador desee incluir el caracter % en la pgina Web diseada,
entonces el mismo debe ser precedido por otro caracter %. Por ejemplo para mostrar 23%, en
el cdigo de la pgina se debe colocar 23%%.
A continuacin se coloca a modo de ejemplo el cdigo fuente para configurar el pin B0
del PIC, adems de mostrar un botn para cambiar el estado del pin (en caso que se configure
como salida) el estado del pin (en caso de estar configurado como entrada), tambin se
permite configurar el pin y adems los cambios realizados se recuerdan al encender de nuevo
el mdulo. El ejemplo consta del archivo index.htm y el archivo main.cgi, se requieren de dos
archivos por el hecho de que los comandos solo pueden ser incluidos en archivos con
extensin cgi.

56
index.htm
<html>
<head>
<title>
Ejemplo de Configuracin de un puerto del PIC
</title>
</head>
<! - - Los comandos deben ser incluidos en el archivo *.cgi -->
<iframe name=main src="main.cgi" height="100%" width="100%" scrolling="no" frameborder=0>
</iframe>
</body>
</html>

main.cgi
<html>
<head>
<meta http-equiv="Pragma" content="no-cache">
<title> Servidor Web Modtronix SBC65ECR </title>
<script type="text/javascript">
<!-- La siguiente funcin muestra un botn si el pin es configurado como salida -->
<!-- muestra valor del puerto "0" "1" si esta configurado como entrada
-->
function ln(io,val,name) {
document.write("<td align=center>");
if(io==0) {
document.write("<input type=submit value="+val+" name=\""+name+"\">");
}
else {
document.write(val);
}
document.write("</td>");
}
</script>
</head>
<body>
<br> Este ejemplo habilita al ususario a configurar el pin b0 del PIC como entrada o
<br> salida y monitorear su valor. La configuracin es recordada cuando se vuelve a
<br> encender el mdulo.
<hr>
<b>Configuracin del PIN</b>
<form method="GET" action="main.cgi">
<b>B0: &nbsp; </b>
<input %b48 type=radio value="1" name="bc0r">
Entrada &nbsp;
<input %b40 type=radio value="0" name="bc0r">
Salida
<br>
<input type=submit value="Apply Changes">
</form>
<hr>

57
<b>Cambiar el estado del pin B0</b>
<br> Las siguiente linea muestra un botn al lado del nombre del pin, si el mismo
<br> es configurado como salida. Cuando el botn es pulsado el valor del pin es
<br> cambiado.
<form method="get" action="main.cgi">
<!-- b50: Es reemplazado por '0' si B0 es salida, '1' es el mismo es entrada
<!-- b00: Es reemplazado por '1' si B0 esta a '1' lgico, '0' si esta a '0' lgico
<!-- 'bx0' es un comando CGI y el mismo pondr a '1' '0' el pin dado

-->
-->
-->

B0: <script type="text/javascript"> ln(%b50,%b00,"bx0"); </script>


<br>
</form>
<hr>

La pgina Web correspondiente se presenta en la figura 3.1, donde se observa, que el


pin B0 est configurado como salida, por lo que se muestra un botn donde el usuario puede
cambiar el estado del mismo, adems se observa que encima del botn se encuentra el valor
actual del pin, que en el caso de la figura tiene el estado 0.

Figura 3.1. Pgina Web ejemplo del cambio de estado en el pin B0

En la pgina se observa que en los formularios se coloca una entrada de tipo submit, la
cual debe ser colocada en los mismos para que los cambios realizados para los comandos CGI
que correspondan, sean ejecutados. En el ejemplo anterior se observa que en el caso del

58
cambio de estado en el pin B0, esta entrada es usada a su vez para mostrar el estado actual del
pin.
En el mdulo sbc65ecr las pginas Web son almacenadas en una memoria EEPROM
externa. La memoria presenta 64Kb disponibles para la creacin de pginas Web diseadas
por el usuario. La pgina Web que el mdulo trae por defecto, solo ocupa aproximadamente
32Kb, por que pueden ser creadas pginas mucho ms complejas, usando el total del espacio
disponible.
Para ahorrar espacio en la memoria, antes de cargar los archivos en el mdulo, los
mismos son comprimidos lo cual reduce considerablemente el espacio ocupado por estos en
memoria. Los archivos son comprimidos usando la compresin HTTP Gzip, los archivos
comprimidos deben tener como extensin htm, css, txt y js, ya que si un archivo con extensin
cgi es comprimido, entonces los comandos que all se encuentren escritos no sern ejecutados
ni reemplazados en la pgina mostrada al cliente.
Para cargar los archivos en el mdulo, los mismos deben ser comprimidos y
compilados en un archivo imagen nico con extensin img. Ambas acciones son ejecutadas
usando un programa llamado Modtronix Network Bootloader, esta aplicacin se puede
descargar gratuitamente desde el sitio Web del fabricante (Modtronix Engineering, 2007).
.
Mediante el uso de esta aplicacin se pueden comprimir y compilar los archivos que
conforman la pgina Web que se desea cargar al mdulo, el uso de esta aplicacin presenta
ventaja de realizar la carga del archivo imagen compilado haciendo uso de la red conociendo
la direccin IP del mdulo e ingresando el nombre y clave de administrador configuradas para
el mismo. Tambin es posible mediante el uso de este software, actualizar el programa del
PIC, sin que se requiera el uso de un programador, usando la red para tal fin, slo se debe
indicar el directorio donde se encuentra incluido el programa que se desea cargar y conocer la
direccin IP del mdulo y la clave y nombre de administrador. En la figura 3.2 se encuentra
una imagen donde se observa la interface mostrada por el programa para el almacenamiento de
las pginas Web en el mdulo.

59

Figura 3.2. Carga de pginas Web usando Modtronix Network Bootloader

Figura 3.3. Actualizacin del programa del PIC usando Modtronix Network Bootloader

60
En la figura 3.3 se muestra la seccin del programa donde se permite cargar el archivo
con extensin hex que contiene el programa que se desea cargar al mdulo. Para realizar la
carga del archivo, previamente se debe seleccionar la direccin IP del mdulo, la direccin IP
donde se encuentra el Bootloader que por lo general es la misma del mdulo y seleccionar el
directorio donde se encuentra almacenado el archivo que sea desea cargar. Hecho esto se debe
hacer clic sobre el botn connect, mediante el cual se hace que el mdulo entre en modo
bootloader y se encuentre habilitado para la carga del nuevo archivo. Una vez que el programa
indica en la ventana Message Window que el mdulo se encuentra conectado es posible cargar
el archivo simplemente haciendo clic sobre el botn Upgrade Firmware, con lo cual se carga
el archivo al PIC, se produce un reset al mdulo (si se ha seleccionado esta opcin), para que
los cambios surtan efecto.
Es posible que se pida autorizacin para entrar a ciertas secciones del sitio Web que se
disee, para lograr esto lo nico que se debe hacerse es comenzar el nombre de la pgina, la
cual se desea pedir autorizacin, con la letra x, como por ejemplo la pgina xset.cgi, en este
caso cuando el cliente desee accesar a la pgina usando un hipervnculo o introduciendo el
nombre directamente desde la barra de direcciones del explorador, se abre una ventana en la
cual el cliente debe introducir el nombre y clave de administrador. Si estos valores coinciden
con los almacenados en memoria, la pgina se abre, de lo contrario, aparece en pantalla un
aviso que indica que los valores introducidos no coinciden, por lo tanto la pgina no ser
abierta.
El usuario puede cambiar el nombre y clave de administrador que el sistema trae por
defecto (admin y pw respectivamente), utilizando la pgina Web que el mdulo trae por
defecto, o tambin incluyendo los comandos correspondientes en el sitio Web diseado
tambin mediante el mtodo UTP HTTP GET. En la hoja de datos del mdulo se explica con
ms detalles como pueden ser cambiados estos parmetros (Modtronix Engineering, 2007).

3.3. PGINA WEB DISEADA


El diseo del sitio Web que permite el monitoreo del sistema formado por el horno y el

61
controlador, se bas en la inclusin de dos marcos fijos superior e izquierdo, en donde se
incluye el logotipo de la ULA y la identificacin de la misma (superior) y un conjunto de
enlaces que permiten al usuario desplazarse a travs del sitio de una manera ms fcil
(izquierdo). Estos dos marcos permanecen visibles desde todos los enlaces.
Cada uno de los enlaces se despliega usando el espacio que queda inutilizado por los
dos marcos. Cuando el usuario tiene acceso a la pgina usando la direccin IP del mdulo
(150.185.xxx.yyy) el nombre de la pgina (http://hornojl.com) (el cliente se debe encontrar
dentro de la subred dentro de la cual se encuentra el mdulo), aparecen visibles en pantalla los
dos marcos descritos y una pgina de introduccin donde se visualiza un texto donde se
explica brevemente el propsito del sitio y una foto del mdulo sbc65ecr. En la parte inferior
se aadi un enlace que permite el envo de un e-mail al creador del sitio Web (Figura 3.4).

Figura 3.4. Pantalla mostrada al ingresar al sitio Web diseado

A continuacin, se explican cmo se construyeron y que contienen cada uno de los enlaces
dentro del sitio Web diseado.

62
3.3.1. Introduccin

Este enlace es utilizado para llevar al usuario hasta la pantalla de inicio (Figura 3.4), esta
pgina es mostrada por defecto cuando el usuario ingresa al sitio.
3.3.2. Monitoreo Temperatura

En esta seccin el usuario podr conocer el valor de la temperatura actual en el horno, y


adems saber cul es el valor del setpoint en el controlador. El enlace muestra una pantalla
como la mostrada en la figura 3.5, en la cual se pueden identificar cada una de las partes que
conforman al mismo.

Figura 3.5. Seccin Monitoreo de Temperatura

Para la construccin de este enlace se hicieron uso de los comandos z12 y z01,
creados para el monitoreo de la temperatura y del setpoint respectivamente. Los mismos se

63
incluyeron en un formulario tipo GET, en un archivo con extensin cgi, el botn denominado
actualizar es de tipo submit en el formulario, y la accin del mismo es recargar el enlace,
para de esta manera ejecutar de nuevo los comandos CGI y actualizar la informacin al
cliente.
<body>
<!-- Se crea el formulario. Dentro del mismo se colocan los comandos que permiten
-->
<!-- conocer el valor de la temperatura en el horno y del setpoint en el controlador -->
<form method=GET action=mon.cgi>
...
<p class="pgSec" align="center">
...
<!-- Inclusin del comando para solicitar el valor de la temperatura en el horno -->
Temperatura: %z12 C <br> <br>
...
</p>
...
<p class="pgSec" align="center">
...
<!-- Inclusin del comando para solicitar el valor del setpoint del controlador -->
Setpoint: %z01 C <br>
...
</p>
...
<!-- Inclusin del botn que permite actualizar los valores para los comandos
<input type=submit value="Actualizar">

-->

...
</form>
...
</body>

La inclusin de comandos para solicitar informacin sobre los parmetros en el


controlador y valor de la temperatura actual, se realizan de manera similar a la mostrada en el
extracto de cdigo mostrado anteriormente, incluidos en un formulario tipo GET y con un
botn de actualizar que permite recargar los valores. En el enlace se incluye un vnculo que
permite llevar al usuario hasta la seccin donde el mismo puede cambiar el setpoint para el
controlador. Para poder ingresar al enlace se requiere que el usuario ingrese el nombre y clave
de administrador.
3.3.3. Cambio del Setpoint

En esta seccin el usuario puede cambiar el setpoint para el controlador, como se


explic anteriormente, para ingresar al enlace se requiere que el usuario introduzca nombre y
clave de administrador. Para ingresar el nuevo valor para el setpoint se incluy un cuadro de

64
texto, en el cual el usuario puede introducir el nuevo valor para el parmetro. Por defecto, el
cuadro de texto muestra el valor actual para el setpoint.
Los valores validos que pueden ser introducidos son 0 y entre 30 y 250 (ambos
inclusive), cualquier otro valor ser descartado y por lo tanto no ser enviado al controlador.
En la figura 3.6 se observa la pantalla que es presentada al usuario dentro de esta seccin.

Figura 3.6. Seccin Cambio del Setpoint al Controlador

Para la construccin de este enlace, no solo se requiri del uso de la variable z01
referente a la carga del valor del setpoint, sino tambin se requiri del uso del comando z1
que permite actualizar el valor del mismo. A continuacin se muestra un extracto del cdigo
que genera la pgina para observar una de las maneras como pueden ser usados estos
comandos.
<head>
...
<script type="text/javascript">
function pv(v,name) {
document.write("<tr><td class=pgHdr colspan=2 align=center><b> Setpoint:&nbsp </b>");

65
document.write("<input type=text size=5 maxlength=3 value="+v+" name=\""+name+"\">
C<br><br></td >");
document.write("</tr>");
}
</script>
...
</head>
<body>
...
<form method=GET action=XSET.CGI>
...
<script type="text/javascript">
pv(%z01, "z1");
</script>
...
<input type=submit value="Actualizar">
...
</form>
...
</body>

En el cdigo se observa que se hizo uso de una funcin de tipo JavaScript donde se
incluye en pantalla el cuadro de texto donde el usuario debe introducir el nuevo valor para el
setpoint. La funcin se llama pv, y recibe como parmetros v, que en este caso es la
variable para leer el valor del setpoint desde el controlador, y el parmetro name que es el
comando z1 encargado de enviar al controlador el nuevo valor para el setpoint.
El cuadro de texto muestra como valor por defecto el valor actual para el setpoint, esto
es logrado dndole al parmetro value del cuadro de texto el valor de la variable %z01. El
comando z1 es incluido en el parmetro name del cuadro de texto, esta es la manera de
incluir este tipo de comandos en pginas en las cuales el usuario introduce algn valor para
hacer modificaciones en el controlador o en alguno de los mdulos del PIC.
3.3.4. Controlador

En esta seccin, el usuario puede conocer los parmetros con los cuales est operando
el controlador al momento de la visita al sitio. Para ingresar a este enlace no se requiere el
ingreso de clave alguna, debido a que en la seccin solo es permitido que el usuario realice el
monitoreo de los parmetros mas no es permitido el cambio de sus valores. En la parte inferior
de los parmetros se encuentra un vinculo que lleva al usuario a la seccin donde es posible
cambiar los valores de los parmetros en el controlador, el vinculo slo se puede utilizar si se
ingresa el nombre y clave de administrador. En la figura 3.7 se observa la pantalla que es
presentada al usuario cuando ingresa a este enlace en el sitio.

66

Figura 3.7. Seccin Monitoreo de los parmetros del Controlador

La codificacin utilizada para la creacin de esta pgina es similar a la utilizada para la


seccin del monitoreo de la temperatura en el horno, ya que slo se est monitoreando
informacin y no se estn introduciendo nuevos valores para los parmetros. Los comandos
utilizados para monitorear los parmetros Kp, i, d son z02, z03 y z04 respectivamente (tabla
2.8).
3.3.5. Ajuste del controlador

En esta seccin el usuario puede realizar cambios en los parmetros del controlador.
Similar al cambio de setpoint, se colocan cuadros de texto para cada uno de los parmetros, en
los cuales el usuario puede observar el valor actual para cada uno de los mismos y realizar los
cambios que se requieran. Al lado de cada cuadro de texto se incluyeron 2 celdas donde se
encuentra informacin acerca del rango de valores que pueden ser introducidos para cada
parmetro (tabla 2.10), y un ejemplo de cada uno. En la figura 3.8 se encuentra la pantalla
presentada al cliente cuando el mismo ingresa a este enlace.

67

Figura 3.8. Seccin Ajuste del Controlador

Cuando se van a realizar modificaciones se debe incluir valores para los tres
parmetros, antes de hacer clic sobre el botn actualizar, ya que el programa y la pgina
fueron diseadas de tal manera que los tres parmetros deben ser actualizados al mismo
tiempo.
3.3.6. Configuracin

En esta seccin el usuario puede conocer la configuracin de la red que tiene configurado el
servidor, al momento de la visita. Adems de esto tambin se incluye la velocidad bajo la cual
se encuentra operando el puerto serial, esta informacin es incluida ya que si la configuracin
de la velocidad del puerto serial en el mdulo es diferente de 9600 baudios, entonces no se
podr establecer la comunicacin con el controlador. Cuando la configuracin de velocidad se
encuentra configurada a un valor diferente al mencionado, entonces se despliega un mensaje
en pantalla indicando que la configuracin de velocidad debe ser cambiada a 9600 baudios
para poder establecer comunicacin con el controlador.

68
En la parte inferior del enlace se incluye un vnculo que despliega en pantalla una
pgina donde el usuario, luego de introducir su nombre y clave de usuario, puede cambiar los
parmetros de la red. Los cambios efectuados para estos parmetros, solo surten efecto cuando
el mdulo es reiniciado.
La codificacin de esta seccin se realiz de manera similar a la utilizada para la
seccin del monitoreo de la temperatura, y el enlace donde se permite el cambio de los
parmetros de la red se codific de manera similar a la seccin del cambio del setpoint usando
los comandos adecuados para cada caso, los cuales se encuentran en la hoja de datos del
fabricante del mdulo (Modtronix Engineering, 2007).
La pantalla presentada al usuario para la seccin de configuracin y el enlace que
permite el cambio de los parmetros se encuentran en la figura 3.9 y 3.10 respectivamente.

Figura 3.9. Seccin Configuracin

69

Figura 3.10. Seccin Cambio de los parmetros de la red

CAPTULO IV
PRUEBAS AL SISTEMA

En este captulo se describe cmo se realiz la puesta a punto del sistema, incluyendo la
obtencin de la funcin de transferencia del sistema, ajuste de los parmetros del controlador,
seleccin del tipo de controlador, pruebas con respecto al monitoreo de la planta y la
manipulacin de los parmetros del controlador usando el sitio Web.

4.1. DISEO DEL MDULO QUE CONTIENE AL CONTROLADOR


Para dar soporte a los componentes electrnicos que conforman el mdulo del controlador, se
realiz el diseo de un circuito impreso usando el programa TraxMaker, usando un diseo a
una sola capa. En la figura 4.1 se observa una fotografa de la disposicin de los elementos en
la placa junto con los puertos que contiene la misma (Salida para la pantalla LCD el para el
Rel y entrada para el teclado matricial y para la termocupla).
A continuacin en las figuras 4.2 y 4.3 se observa el mdulo del controlador,
finalmente ensamblado en una carcasa resistente, que contiene en la parte exterior de la misma
los puertos que permiten conectar la termocupla (En donde se identifica claramente como debe
ser conectada la misma, cuidando su polaridad), otro para conectar el rel, el puerto serial y la
alimentacin de todo el circuito.
En la parte superior de la carcasa se encuentra la pantalla LCD, el teclado matricial, y
los switch que permiten el encendido del mdulo y el cambio de operacin del controlador
para pasar de modo local a modo Internet y viceversa (debidamente identificados).

71

Figura 4.1. Disposicin de los elementos en la placa de circuito impreso

Figura 4.2. Mdulo Controlador ensamblado (Vista Superior)

72

Figura 4.3. Mdulo Controlador ensamblado (Vista Frontal)

Al encender el mdulo, se comprob que la pantalla LCD funcionara correctamente, al


igual que el teclado matricial. Se observ que la medida de temperatura efectuada por la
termocupla y mostrada en pantalla coincidiera con la temperatura en el interior del horno y que
el mismo se encontrase apagado, ya que el horno se encuentra programado para que por
defecto se encuentre apagado al encender el mdulo. Se coloc un valor cualquiera en la
temperatura de referencia para comprobar el funcionamiento del mdulo PWM, el rel de
estado slido y las resistencias del horno.
Se pudo comprobar que todas las pruebas realizadas presentaron resultados
satisfactorios, ya que todos los elementos probados funcionaron correctamente.

4.2. IDENTIFICACIN DEL SISTEMA


Para la identificacin del sistema se utiliz el mtodo de la curva de reaccin (Camacho,
1999), el cual es un mtodo que se aplica en sistemas en lazo abierto, colocando el controlador
en manual. Los datos se obtienen mediante la prueba de escaln que proporciona una curva de
reaccin como respuesta. Los datos obtenidos son los parmetros K, y to.
Para aplicar este mtodo se deben seguir los siguientes pasos de manera general:

Colocar el controlador en manual, y esperar que el proceso se estabilice.

Realizar un cambio escaln en la seal de salida del controlador.

Registrar la curva de respuesta del proceso.

73

Aplicar el mtodo de los 2 puntos (Figura 4.4) para aplicar las ecuaciones que
permiten conocer los parmetros que identifican el sistema.

Figura 4.4. Curva de reaccin para identificar el sistema (Camacho, 1999)

Aplicar las siguientes ecuaciones para conocer los valores de los parmetros K, y to.

K=

(T 2 T 1) C
(%2 %1)%

(4.1)
(4.2)
(4.3)

Para aplicar el mtodo descrito anteriormente, se coloc el controlador en manual,


colocando el mdulo en modo local y pulsando en el teclado matricial la tecla #, a
continuacin se pulsa en el mismo la tecla 0, de esta manera se configura el controlador para
operar en modo manual. Se conecta el mdulo al puerto serial del computador, usando el
puerto creado para tal fin en el mismo, ya que el mdulo cuando se encuentra en modo local
transmite a intervalos de 10,5 s el valor de la temperatura actual. Usando el hiperterminal de
Windows para recibir los datos desde el momento que se asigna un ciclo de servicio para el

74
mdulo PWM, y de esta manera poder graficar los datos obtenidos usando el programa
adecuado.
Para realizar la curva se parti desde la temperatura en el interior del horno a un ciclo
de servicio igual a cero, y se introdujo un cambio escaln hasta un valor para el mismo de
50%. En la figura 4.5 se observa la curva obtenida y los valores de los dos puntos que
permiten calcular los parmetros que identifican el sistema.

Figura 4.5. Curva de Reaccin realizada experimentalmente

Del grafico se obtienen los siguientes valores:


T = (211,7 24) C = 187,7 C

T1 = 24 C
T2 = 211,7 C
( T * 0,283 ) + 24 C = 77,1 C

75
( T * 0,632) + 24 C = 142,6 C
t (0,283* T) = 315 s
t (0,632* T) = 615 s
Conocidos estos valores, se aplican las ecuaciones 4.1, 4.2 y 4.3 para calcular los
parmetros que caracterizan al sistema.
= 1.5 * ( 615 s 315 s ) = 450 s

to = 615 s 450 s to = 165 s


K = (187,7 C / 50%) K = 3,754 C / %

4.3. SINTONIZACIN DEL CONTROLADOR


La sintonizacin del controlador se realiz utilizando el mtodo de Ziegler y Nichols a lazo
abierto (Creus, 1998; Camacho, 1999). En la tabla 4.1 se encuentran las ecuaciones que
permiten calcular los parmetros para el controlador P, PI y PID, conocidos los parmetros
que identifican al sistema y los resultados obtenidos para los parmetros calculados
anteriormente.

Tabla 4.1. Parmetros de Sintonizacin usando el mtodo de Ziegler - Nichols


Parmetros
Valor Calculado segn datos
Tipo de controlador
Ecuacin
de Ajuste
obtenidos experimentalmente
P

Kp =

Kp

0,9 to
Kp =

K

PI
i
Kp
PID

1 to

K

Kp

Kp = 0,726 % / C
1

Kp = 0,653 % / C

i = 3,33 * to

Kp =

1,2 to

K

i = 549,5 s
1

Kp = 0,871 % / C

i = 2 * to

i = 330 s

d = to / 2

d = 82,5 s

76
Los valores calculados para cualquiera de los controladores puede ser introducido
usando el teclado matricial (Modo Local), a travs del sitio Web diseado (Modo Internet).
Para probar el funcionamiento del controlador se cargaron los valores calculados para el
controlador PID usando el teclado matricial, ingresando al men de configuracin del
controlador pulsando la tecla * y a continuacin introduciendo los valores para cada uno de
los parmetros, segn el formato explicado en la tabla 2.1. Para este caso se introducen los
valores 87, 33 y 82 para los parmetros Kp, ti y td respectivamente.

4.4. PRUEBAS AL CONTROLADOR


Para probar el controlador, se levantaron curvas para diferentes valores en la temperatura de
referencia y para diferentes valores de los parmetros en el controlador. De esta manera se
selecciona la mejor respuesta y a su vez los mejores parmetros para el controlador. En las
figuras 4.6, 4.7 y 4.8 se encuentran las curvas realizadas.

Figura 4.6. Ajuste del Setpoint a 150 C partiendo de temperatura ambiente

77

Figura 4.7. Ajuste del Setpoint a 200 C partiendo de 150 C

Figura 4.8. Ajuste del Setpoint a 100 C partiendo de 200 C

78
Observando las graficas anteriores, se concluye que el controlador PI con Kp = 0,8 y
Ti = 600 hace que el sistema presente una mejor respuesta temporal, ya que presenta un menor
sobre disparo para elevar la temperatura y tambin para disminuir la misma. En cuanto al
tiempo de establecimiento, aunque este parmetro no puede ser observado con facilidad en las
graficas, se comprob que tambin result ser menor, al momento de la recoleccin de los
datos.

4.5. CONEXIN DEL MDULO SBC65ECR CON EL CONTROLADOR


Una vez realizadas las pruebas al controlador en modo local (Pantalla LCD, Teclado Matricial,
Ajuste del controlador, Salida al Rel), llega el momento de conectar al controlador con el
mdulo sbc65ecr. Previamente hay que configurar los parmetros de la red y el puerto serial a
una velocidad de 9600 baudios, en el mdulo sbc65ecr. Esta configuracin se realiz
utilizando la pgina Web que el mdulo trae por defecto.
A continuacin se carg el sitio Web diseado y el programa del PIC con las
modificaciones realizadas usando el Modtronix Network Bootloader. Para realizar la conexin
fsica entre ambos mdulos se utiliza un cable stereo (3.5 plug a 3.5 plug) (Figura 2.6). En la
figura 4.9 se observa el montaje realizado.
Una vez encendido el sistema, se ingres al sitio Web desde el navegador de un
computador conectado a la red, introduciendo la direccin IP del servidor Web, observando
como la pgina de inicio (Figura 3.4), se carg en el navegador tal como era de esperarse.
Para que sea posible monitorear y cambiar los parmetros del controlador y la
temperatura de referencia, se requiere que el controlador se encuentre en Modo Internet.
Cuando el controlador se encuentra configurado de esta manera es posible accesar a cada una
de las secciones del sitio, de lo contrario, cuando se ingrese a un enlace donde se monitoree
algn parmetro se mostrar en pantalla el valor 0 en el espacio donde debiera desplegarse la
informacin monitoreada.

79

Figura 4.9. Conexin del controlador al mdulo sbc65ecr

Seguidamente se ingres a la seccin Cambio SetPoint ingresando el nombre y clave


se acceso, y se introdujo un nuevo valor para el punto de operacin del horno, para comprobar
la comunicacin entre ambos mdulos. A modo de ejemplo se introdujo el valor 150 C, en la
figura 4.10 se observa la seccin Monitoreo Temp donde se comprueban cmo los valores
de la temperatura actual y del setpoint son recibidos desde el controlador. En la figura 4.11 se
observa la pantalla LCD del controlador, en la cual se puede observar cmo el nuevo valor del
setpoint se recibi correctamente.
Luego de comprobar el funcionamiento de la comunicacin de los parmetros
Temperatura Actual y Setpoint entre los mdulos y entre el servidor y el navegador Web
del cliente, resta por comprobar la comunicacin de los parmetros del controlador tanto para
el monitoreo de los mismos, como para realizar cambios a estos desde el navegador Web. En
la figura 4.12 se observa cmo deben ser escritos los valores para el controlador antes de
pulsar el botn Actualizar, suponiendo que se desean ingresar los valores Kp = 0.8,
i = 600, d = 0.

80

Figura 4.10. Prueba comunicacin entre los mdulos (Vista Explorador Web)

Figura 4.11. Prueba comunicacin entre los mdulos (Vista Pantalla Controlador)

81

Figura 4.12. Cambio de los parmetros en el controlador (Introduccin de datos)

Cuando el usuario esta conforme con los valores de los parmetros que desea cargar al
controlador debe pulsar el botn Actualizar, para que los mismos sean enviados al
controlador. Al ocurrir esto, la pgina se recarga, para lo cual se solicitan de nuevo los valores
al controlador, los cuales aparecen en pantalla tal cual como son usados en el controlador. En
la figura 4.13 se observa cmo es presentada la informacin en pantalla cuando se recarga la
pgina habiendo introducido los parmetros indicados en la figura 4.12.
Si el usuario no se encuentra conforme con los parmetros introducidos, puede
introducirlos de nuevo, teniendo en cuenta que debe introducir los valores para los tres
parmetros antes de pulsar el botn Actualizar
Esta informacin tambin se puede observar ingresando al enlace Controlador, desde
el cual se puede monitorear el valor para cada uno de los parmetros en el controlador. En la
figura 4.14 se observa cmo es presentada la pgina cuando el controlador tiene cargados los
valores de los parmetros indicados en la figura 4.12.

82

Figura 4.13. Cambio de los parmetros en el controlador (Recarga de la Pgina)

Figura 4.14. Monitoreo de los parmetros del controlador

83
Se comprob que la seccin Configuracin y Cambio en los Parmetros de la Red
funcionaran adecuadamente, recordando que cualquier cambio en uno de los parmetros slo
surtir efecto luego de reiniciar el mdulo. En las figuras 3.9 y 3.10 se presentan la pgina de
configuracin mostrada al cliente en el explorador Web y la pgina de configuracin de los
parmetros de la red respectivamente.

CONCLUSIONES

Finalizada la construccin del Controlador Supervisorio para un Mdulo de Temperatura, se


puede decir que se han cumplido con todos los objetivos propuestos para este Trabajo de
Grado, ya que la medicin de la temperatura en el interior del horno se logr de una manera
satisfactoria, se hizo la identificacin del sistema usando el controlador diseado, destacando
que este ltimo funciona adecuadamente cumpliendo con las tareas para las cuales fue
diseado.
Se logr realizar la comunicacin entre el controlador y el modulo sbc65ecr, con lo
cual se logr monitorear efectivamente la temperatura en el interior del horno y monitorear y
realizar cambios a los parmetros del controlador y la temperatura de referencia.
Se realiz el diseo del sitio Web que permite monitorear y cambiar los parmetros del
controlador. Un usuario cualquiera sin clave de acceso slo tiene la posibilidad de monitorear
las variables, pero no le es permitido realizar cambios a los mismos, a menos que ingrese el
nombre y clave de administrador. El sitio diseado, luego de ser compilado en un archivo
imagen nico, ocupa un espacio de 33Kb, por lo que no present problema alguno para ser
almacenado en la memoria EEPROM del mdulo sbc65ecr (64Kb disponibles para el
almacenamiento del sitio Web diseado).
Las pruebas realizadas al sistema en funcionamiento, ponen de manifiesto la
versatilidad del diseo realizado, ya que con el mismo es posible recibir informacin sobre la
temperatura en el interior el horno y cualquiera de los parmetros del controlador, en tiempo
real y desde cualquier localizacin que se encuentre al alcance de la red donde se encuentra el
servidor. Adems si por algn motivo se pierde conexin con la red, es posible configurar el

85
controlador de manera local, simplemente cambiando de posicin el switch destinado para tal
fin en la parte superior del mdulo.
El controlador diseado permite la identificacin de sistemas donde la variable a
controlar es la temperatura, ya que se permite colocar el controlador en modo manual o
automtico, segn se requiera. Adems que se permite variacin de los parmetros del
controlador, en un rango relativamente amplio para cada uno de ellos. Cuando el controlador
se encuentra en modo local se pueden adquirir valores de temperatura usando el puerto serial
de un computador para construir graficas que permitan observar la respuesta del sistema o para
cualquier otro fin.
El sistema diseado puede ser usado en procesos industriales donde se requiera
mantener controlada la temperatura del proceso y adems que el controlador pueda ser
supervisado de manera remota sin la necesidad de estar presente en el lugar donde se
encuentra el controlador. Por otra parte el sistema tambin puede ser usado en practicas de
Laboratorio de Control, donde el estudiante realice la identificacin del sistema, luego realice
el ajuste del controlador de acuerdo al tipo seleccionado (P, PI, PD, PID), y observe la
respuesta del sistema encontrndose el estudiante en el sitio donde se halle en funcionamiento
el sistema o mediante el uso de un computador conectado en la misma red del servidor.

RECOMENDACIONES

Es recomendable al momento de disear el sitio Web que las imgenes contenidas en el


mismo no ocupen gran espacio en memoria (>10Kb) ya que esto hara que el espacio
disponible para la colocacin de enlaces o dems objetos se vea reducido considerablemente,
adems si el espacio ocupado por el sitio al ser compilado y cargado al mdulo sbc65ecr es
superior a 64Kb el mdulo puede presentar un funcionamiento errneo e incluso es posible
que el mismo no arranque, porque se puede sobrescribir informacin necesaria para el
funcionamiento de este.
Se recomienda que cuando se seleccionen valores para los parmetros del controlador
diferentes a los utilizados en las pruebas realizadas, se mantenga un monitoreo constante sobre
la evolucin de la temperatura en el horno, ya que se puede dar el caso de acuerdo a los
valores dados, que el sistema se salga de control y la temperatura aumente considerablemente,
en este caso el controlador tiene un sistema de proteccin que consiste en que si la temperatura
aumenta por encima de los 300 C, automticamente se apaga el horno.
Finalmente, es recomendable que el modulo sbc65ecr sea configurado para que,
cuando se pierda conexin con la red, coloque el controlador automticamente en modo local,
y permanezca de esta manera mientras contine el fallo, y de nuevo lo coloque en modo
Internet cuando sea restaurada la conexin.

REFERENCIAS

Analog Devices, Monolithic Thermocouple Amplifiers with Cold Junction Compensation.


Extrado el 17 de Octubre de 2008 desde http://fer.hr/download/repository/AD594_5_c.pdf
Angulo, N. (1999). Redes de computadoras. Manuscrito no publicado. Universidad de Los
Andes.
Camacho, O. (1999). Controladores PID. Extrado el 4 de Febrero de 2009 desde
http://webdelprofesor.ula.ve/ingenieria/ocamacho
Camacho, O. (1999) Sintonizacin de controladores. Extrado el 4 de Febrero de 2009 desde
http://webdelprofesor.ula.ve/ingenieria/ocamacho
Crdenas, O. (1999). Transductores industriales. Mrida, Venezuela: Publicaciones de la
Facultad de Ingeniera. ULA.
Chacn, E. (2004). Laboratorio va Internet para Control de Procesos. Tesis de Maestra.
Universidad de Los Andes.
Creus, A. (1998). Instrumentacin Industrial. Mxico: Alfaomega Grupo Editor. 6 Edicin.
Deitel, H. (2004) Como programar en JAVA. Mxico: Pearson Educacin. 5 Edicin.
Escudero G. (2002). Monitoreo de Procesos Industriales por Internet. Extrado el 26 de
Febrero de 2009 desde http://www4.inti.gov.ar/GD/4jornadas2002/pdf/citei-045.pdf
Grupo de desarrollo ARIAN S.A. (2002) Nota Tcnica 10: Tutora de Controladores PID.
Extrado el 20 de Noviembre de 2008 desde http://www.arian.cl/downloads/nt-010.pdf
Guzmn, G. (2002). Control Remoto por Internet. Extrado el 26 de Febrero de 2009 desde
http://www.univalle.edu/publicaciones/journal/journal7/pag7.htm
Mnuel A y Biel D. (2002). Instrumentacin Virtual. Mxico: Alfaomega Grupo Editor.
Modtronix Engineering. (2007). Modtronix sbc65 datasheet. Extrado el 20 de Noviembre de
2008 desde http://www.modtronix.com/products/sbc65ec/sbc65ecr3.pdf

88

Modtronix Engineering. (2005). Modtronix Expansion Board IOR5E. Extrado el 20 de


Noviembre de 2008 desde http://www.modtronix.com/products/ior5e/ior5er1.pdf
Moreno L. (2003). Ingeniera de Control. Espaa: Editorial Ariel S.A.
National Instruments. (2008) Qu es la Instrumentacin virtual? Extrado el 31 de enero de
2009 desde http://digital.ni.com/worldwide/latam.nsf/web/all/
Palls Areny, R. (2007) Sensores y Acondicionadores de Seal. Espaa: Marcombo. 4
Edicin
Planas Rosell, J. (2002). Medida de Temperaturas. Extrado el 17 de Octubre de 2008 desde
http://www.mater.upm.es/Docencia/Materiales/Instrumentacion/Teoria/inst04.pdf
Van Der Henst, C. (2001). Qu es el CGI?. Extrado el 26 de febrero de 2009 desde
http://www.maestrosdelweb.com/editorial/cgiinfo/

ANEXOS

90

ANEXO 1
ESQUEMA CIRCUITAL DEL MDULO
SBC65ECR

91

92

93

ANEXO 2
ESQUEMA CIRCUITAL DE LA CAJA DE
EXPANSIN IOR5E

94

95

Vous aimerez peut-être aussi