sistema de control supervisor de las condiciones ambientales de

Anuncio
SISTEMA DE CONTROL SUPERVISOR DE LAS CONDICIONES AMBIENTALES DE UNA
BODEGA DE PECES ORNAMENTALES
FERNANDO ANDRÉS MORENO PARRA
PAULA ANDREA SEPÚLVEDA HOYOS
PONTIFICIA UNIVERSIDAD JAVERIANA
FACULTAD DE INGENIRÍA
DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA
BOGOTÁ
2004
SISTEMA DE CONTROL SUPERVISOR DE LAS CONDICIONES AMBIENTALES DE UNA
BODEGA DE PECES ORNAMENTALES
FERNANDO ANDRÉS MORENO PARRA
PAULA ANDREA SEPÚLVEDA HOYOS
Trabajo de grado
Director
Ingeniero Fredy Orlando Ruiz
PONTIFICIA UNIVERSIDAD JAVERIANA
FACULTAD DE INGENIRÍA
DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA
BOGOTÁ
2004
ARTICULO 23 DE LA RESOLUCIÓN No. 13 DE JUNIO DE 1946
"La universidad no se hace responsable de los conceptos emitidos por sus alumnos en sus
proyectos de grado.
Sólo velará porque no se publique nada contrario al dogma y la moral católica y porque los
trabajos no contengan ataques o polémicas puramente personales. Antes bien, que se vea
en ellos el anhelo de buscar la verdad y la justicia".
A Dios por guiarme y mantenerme con fe
A mis padres por ser la fuerza que alimenta
mi espíritu y por hacer posible el haber llegado hasta acá…
A Mis hermanos por ser un gran apoyo y un orgullo para mi
Fernando A.
A Dios por permitirme recorrer esta etapa de la vida,
a mis papás por acompañarme, apoyarme, creer en mi,
y por haberme ayudado a crecer como persona
y realizar mis sueños,
y a mi hermana por ser mi ejemplo y amiga incondicional.
Paula A.
AGRADECIMIENTOS
Al Ingeniero Fredy Ruiz por su tiempo y su interés en el desarrollo y cumplimiento de cada
uno de los objetivos del proyecto.
A Julio González y Blanca Moreno por el espacio y tiempo brindado.
Al Ingeniero Carlos Cotrino por su orientación.
A todos nuestros amigos, por su apoyo y colaboración.
CONTENIDO
pág
INTRODUCCIÓN
1
1. MARCO TEORICO
3
1.1 CONDICIONES BÁSICAS PARA LA SUPERVIVENCIA DE PECES FUERA DE SU
HABITAT NATURAL
3
1.1.1 Temperatura.
3
1.1.2 Aireación.
4
1.1.3 Iluminación.
5
1.1.4 El agua
6
1.2. CAN
1.2.1 Propiedades del protocolo CAN.
2. ESPECIFICACIONES
8
9
11
2.1 ESPECIFICACIONES HARDWARE
13
2.2 ESPECIFICACIONES SOFTWARE
17
3. DESARROLLO
18
3.1 DESCRIPCIÓN DEL PROTOCOLO DE SUPERVISIÓN
21
3.2 MODULO PRINCIPAL
25
3.2.1 Administración e interpretación.
26
3.2.2 Iluminación.
27
3.2.3 Alarma sonora.
30
3.2.4 Reporte visual.
31
3.2.5 Bloque de comunicaciones
32
3.3 MÓDULO DE TEMPERATURA
33
3.3.1 Bloque de muestreo.
33
3.3.2 Bloque de amplificación.
34
3.3.3 Bloque de filtrado.
35
3.3.4 Bloque de conversión análogo digital.
36
3.3.5 Bloque de procesamiento de datos.
37
3.3.6 Bloque de comunicaciones.
37
3.4 MÓDULO DE AIREACIÓN
39
3.4.1 Bloque de muestreo.
39
3.4.2 Bloque de administración.
41
3.4.3 Bloque de comunicaciones.
42
3.5 MODULO DE COMUNICACIÓN CON EL COMPUTADOR
43
3.6 SOFTWARE SUPERVISOR
46
3.6.1 Supervisión de temperatura.
47
3.6.2 Supervisión del estado de aireación.
50
3.6.3 Control del encendido y apagado de la luz.
51
3.6.3 Configuración de módulos de aireación.
52
3.6.4 Programación de tareas.
53
3.6.5 Consulta de historial.
54
3.6.6 Otras tareas.
55
3.7 DISEÑO DEL CONTROL DE TEMPERATURA
56
4. RESULTADOS
62
5. CONCLUSIONES
72
BIBLIOGRAFÍA
74
ANEXOS
76
LISTA DE TABLAS
pág
Tabla 1.1
Temperatura del agua según el tipo de pez.
4
Tabla 1.2
Relación entre la temperatura y la concentración de oxígeno en el
Agua.
5
Tabla 1.3
Clasificación del agua según la dureza.
6
Tabla 3.1
Identificadores de los mensajes CAN del sistema.
22
Tabla 3.2
Tabla de verdad de filtros y máscaras.
23
Tabla 3.3
Identificadores de los mensajes de transmisión al PC.
24
Tabla 3.4
Identificadores de los mensajes de recepción del PC.
24
Tabla 3.5
Máscaras y filtros del módulo principal.
32
Tabla 3.6
Especificaciones operacional MPC6022.
34
Tabla 3.7
Máscaras y filtros del módulo temperatura.
38
Tabla 3.8
Valores del filtro de los diferentes módulos de temperatura.
38
Tabla 3.9
Máscaras y filtros del módulo aireación.
43
Tabla 3.10
Máscaras y filtros del módulo de comunicación con el computador.
45
Tabla 3.11
Diferencias de temperatura, superficie del agua y ambiente en la
Bodega de peces.
57
Tabla 3.12
Variación de la temperatura del agua cuando se han cerrado los
quemadores.
57
Tabla 3.13
Variación de la temperatura del agua cuando se han abierto los
quemadores.
58
Tabla 3.14
Tabla de costos implementación del control de temperatura.
61
Tabla 4.1
Reporte de alarmas, acuario 32, distancia entre conductores de 3 cm.
67
Tabla 4.2
Alarmas falsas presentadas, distancia entre conductores de 3 cm.
68
Tabla 4.3
Alarmas falsas presentadas, distancia entre conductores de1 cm.
68
Tabla 4.3
Tabla de costos del sistema.
70
LISTA DE FIGURAS
pág
Figura 1.1
Relación del Modelo OSI y CAN.
8
Figura 1.2
Ejemplo transmisión MULTICAST.
9
Figura 2.1
Diagrama en bloque general del sistema.
12
Figura 3.1
Diagrama general del sistema.
18
Figura 3.2
Diagrama de flujo general del sistema.
20
Figura 3.3
Ejemplo manejo filtro y máscaras.
23
Figura 3.4
Diagrama en bloques del módulo principal.
25
Figura 3.5
Conmutación estado manual o controlado. Esquemático.
28
Figura 3.6
Señales iluminación.
29
Figura 3.7
Diagrama en bloques del módulo temperatura.
33
Figura 3.8
Filtro Butterworth empleado en el módulo de temperatura.
35
Figura 3.9
Respuesta en frecuencia del filtro Butterworth de ωc=1 kHz.
36
Figura 3.10
Diagrama de bloques del modulo de aireación.
39
Figura 3.11
Topología del sensor para detectar falla en el sistema de aireación.
40
Figura 3.12
Esquemático del sensor de aireación.
41
Figura 3.13
Diagrama en bloques módulo de comunicación con el computador.
44
Figura 3.14
Trama RS-232.
45
Figura 3.15
Tablas de la base de datos.
47
Figura 3.16
Visualización valor de la temperatura por zonas.
48
Figura 3.18
Visualización falla en el módulo de temperatura.
48
Figura 3.19
Ventana configuración modulo de temperatura.
49
Figura 3.20
Ventana de visualización variación de la temperatura en un día.
49
Figura 3.21
Visualización falla en el módulo de aireación.
50
Figura 3.22
Visualización de fallas en el acuario.
51
Figura 3.23
Ventanas de control de iluminación.
52
Figura 3.24
Proceso de configuración de módulo de aireación.
53
Figura 3.25
Ventana de programación de tareas.
54
Figura 3.26
Tabla de alarmas de módulos de aireación.
54
Figura 3.27
Ejemplo de ventana de consulta de detalles de un acuario.
55
Figura 3.28
Ventana de información de los datos de la última supervisión.
55
Figura 4.1
Condiciones de medida para prueba 1 en bodega.
63
Figura 4.2
Temperatura promedio.
64
Figura 4.4.
Condiciones de medida prueba 2 en bodega.
64
Figura 4.3
Temperatura por zonas.
65
Figura 4.5
Comparación de medidas, sistema CAN-Fluke 51 II en la bodega de
peces.
66
Figura 4.6
Comparación de medidas, sistema CAN-Fluke 51 II.
66
LISTA DE ANEXOS
pág
Anexo A
Características del protocolo CAN.
76
Anexo B
Diagramas de flujo del sistema.
82
Anexo C
Esquemáticos del sistema.
110
Anexo D
Tablas de resultados de mediciones de temperatura.
117
Anexo E
Manual de hardware del usuario.
Anexo F
Manual de software del usuario.
INTRODUCCIÓN
A partir del aprovechamiento de la biodiversidad de la cual goza Colombia, ha surgido una
forma de empresa nacional dedicada a la comercialización de peces ornamentales. En
Bogotá se encuentran bodegas de almacenamiento de peces de este tipo, propiedad de
empresas que tienen por objeto la comercialización de peces ornamentales de diferentes
variedades con destino al mercado interno y externo del país. Estos peces proceden de la
Orinoquía colombiana, Meta, Vichada, Guainía, Amazonas y en menor proporción de la
Cienaga en el norte del país, donde cientos de personas se dedican a la actividad de la
pesca, capturan variadas especies de peces y los empacan en bolsas de plástico con agua y
oxigeno para enviarlos a Bogotá por vía terrestre o aérea; una vez son recibidos en las
bodegas, estos son almacenados en acuarios de vidrio clasificados por especie, por un
tiempo que puede variar entre 8 días y un mes, mientras son despachados a los clientes.
La situación actual de las bodegas de almacenamiento de peces ornamentales en Bogotá,
presenta un escenario caracterizado por la falta de automatización y control de las variables
involucradas en la construcción del ambiente propicio para los peces.
Surge entonces la necesidad de desarrollar un sistema para incrementar la eficiencia de los
procesos de control y supervisión de algunas de estas variables, en la etapa de
almacenamiento que tiene lugar dentro de la actividad comercial de las organizaciones
dedicadas a esta labor, por lo cual el presente proyecto presenta una solución particular a
esta situación, mediante el desarrollo de un sistema centralizado encargado de controlar y
supervisar de una forma más eficiente, las variables de temperatura, aireación e iluminación.
El centro de este proyecto es la empresa “JB peces tropicales Export”, cuya bodega de
almacenamiento posee aproximadamente 500 acuarios, en los cuales se mantienen entre 50
y 100 especies diferentes de peces. El mantenimiento de condiciones como la temperatura y
la aireación, son labores realizadas de forma totalmente manual y hasta cierto punto
empíricas, no se cuenta con métodos o sistemas de supervisión y control de dichas
variables, las tareas se llevan a cabo por ensayo y error o por simple acción repetitiva a partir
de la consecución de resultados satisfactorios.
El método empírico que hasta ahora se ha llevado en la bodega presenta fallas, ocasionando
alteración en las condiciones ambientales de los peces. Gracias al sistema de control
supervisor se tiene un conocimiento inmediato de las alarmas que se presentan cuando
ocurran fallas en aireación en los acuarios o cambios en la temperatura, evitando pérdidas
económicas representadas en la muerte de cierto número de peces.
Con el desarrollo de éste proyecto no sólo se dio una solución al problema de una compañía
en particular, sino que se abrieron las puertas para tecnificar una de las etapas de la
comercialización de peces ornamentales como es su almacenamiento.
Este documento presenta el desarrollo del sistema propuesto como solución a la supervisión
de la aireación, temperatura e iluminación en la bodega centro de este proyecto. A lo largo
de éste se muestra la descripción general del sistema desarrollado, sus especificaciones
tanto de hardware como de software, así como los desarrollos que se realizaron para llegar
al producto final.
2
1. MARCO TEORICO
1.1 CONDICIONES BÁSICAS PARA LA SUPERVIVENCIA DE PECES FUERA DE SU
HABITAT NATURAL
Para llevar a cabo el diseño y la implementación del sistema de control y supervisión es
necesario conocer las variables de temperatura, aireación e iluminación y las características
del agua en la supervivencia del pez.
1.1.1 Temperatura.
Los peces de acuerdo a su procedencia requieren que el agua en donde se almacenan
tenga una temperatura adecuada (Tabla 1.1), puesto que si la temperatura aumenta con
respecto a su hábitat normal, el pez se debilita orgánicamente debido a que sus funciones
metabólicas aumentan provocando que este tenga más hambre, y si la temperatura
disminuye sucede el caso contrario; estas reacciones también varían de acuerdo a la edad
del pez, un pez joven es menos propenso a sufrir enfermedades causadas por el cambio de
temperatura, que un pez adulto.
Los peces tropicales viven en aguas cuya temperatura no presenta grandes variaciones en el
año, lo que impide que esta clase de pez desarrolle mecanismos que le permitan adaptarse
a cambios bruscos de temperatura en el agua. Esto no significa que los peces deban
mantenerse a temperatura constante todo el día, sino permitir que ésta varié en rangos
normales. Un decrecimiento instantáneo de 2 a 3 ºC puede producir que el pez entre en un
estado de shock adquiriendo enfermedades respiratorias y afecciones en la vejiga notatoria,
que luego se ve reflejada en contaminación del ambiente. Para evitar esto, los cambios que
se produzcan en la temperatura deben ser lentos, no mayores a 3 ºC por hora, teniendo en
cuenta que no puede disminuir menos de 3 ºC ni aumentar más de 8 ºC, con respecto a su
valor normal. Además los cambios de temperatura que se presentan entre el día y la noche
no deben ser superiores a 3 ó 4 ºC.
3
Existen varios sistemas para mantener estable la temperatura del agua del acuario. Para
acuarios de hogar se usan calefactores individuales generalmente eléctricos, y para uso
industrial, como el caso de una bodega de almacenamiento de peces, se usan sistemas
centrales de calefacción eléctricos o a gas.
Tabla 1.1 Temperatura del agua según el tipo de pez
TIPO DE PECES
De agua fría
De agua templada
De agua caliente
TEMPERATURA (ºC)
10-18
18-22
25-28
Los sistemas centrales de calefacción calientan el ambiente del recinto, produciendo a la
vez, calentamiento de la superficie del agua. Gracias a que el sistema de aireación de los
acuarios funciona todo el día, se dará lugar a una mezcla de las capas de agua que se
encuentran a diferentes temperaturas, produciendo un calentamiento uniforme de ésta.
1.1.2 Aireación.
La función del sistema de aireación dentro de un acuario que contenga un número normal de
peces según la especie, es la de agitar el agua para producir el desprendimiento del
anhídrido carbónico (producido por la respiración de los peces) y evitar que éste por ser más
liviano se concentre en la superficie del agua. Además, la aireación produce ondulaciones en
la superficie del agua, lo que facilita el intercambio gaseoso, permitiendo que se absorba
oxígeno y que salga el anhídrido carbónico. Por tanto, no es necesario mantener sistemas
para inyectar oxigeno a los acuarios, en lugar del aire presente en el ambiente, debido a que
la purificación del agua se realiza por el contacto de la superficie de esta con el ambiente.
Los peces jóvenes necesitan 100 veces más oxígeno que los adultos, debido a su proceso
metabólico acelerado.
Existe una relación directa entre la temperatura del agua y la cantidad de oxígeno en ella
(Tabla 1.2), entre mayor sea la temperatura menos contenido de oxígeno presenta.
4
Tabla 1.2 Relación entre la temperatura y la concentración de oxígeno en el agua
TEMPERATURA (ºC)
0
5
10
15
20
25
30
OXÍGENO (mg por lt)º
14.5
12.8
11.2
10.2
9.1
8.3
7.6
De acuerdo a la tabla 1.2, para los peces tropicales el proceso de aireación debe ser mas
acelerado que para los de agua fría, sin embargo, los peces de agua fría necesitan mayor
cantidad de oxígeno que los de agua tropical cuando se encuentran en épocas de
temperatura alta, por no estar acostumbrados a esta condición del ambiente, mientras que
los peces tropicales son menos sensibles a estas condiciones.
El oxígeno también es importante para mantener un número adecuado de bacterias, que
viven en el agua del acuario, y que son las encargadas de transformar los excrementos de
los peces y restos de comida en materias nitrogenadas fertilizantes, si este proceso se
retarda ocasiona la acumulación de amoníaco, elemento tóxico para los peces.
Además de facilitar el intercambio gaseoso, la aireación también contribuye a mantener la
temperatura uniforme dentro del acuario, a través del proceso de mezcla de las capas de
agua que se encuentran a diferentes temperaturas; también ayuda a destruir la película de
aceite que se forma en la superficie; y evitar en general desequilibrios en el nivel normal de
la presión gaseosa.
Si la cantidad de oxigeno disminuye en el acuario, la presión de los gases en la sangre del
pez no disminuye de igual manera, lo que hace que los peces produzcan burbujas de
nitrógeno que se acumularan debajo de la piel, ocasionando una enfermedad conocida como
enfermedad de las burbujas, que cierra los vasos sanguíneos, llevando a una rápida muerte
por embolia gaseosa. Esta enfermedad también puede presentarse por un cambio brusco
de temperatura.
1.1.3 Iluminación.
Es necesario mantener una buena iluminación en el sitio donde se encuentren los acuarios
para evitar que éstos se vuelvan débiles y descoloridos. Además los peces en su medio
5
natural están acostumbrados a cambios graduales de la iluminación entre el día y la noche,
por tanto si se presentan cambios bruscos en ella, éstos se asustan y saltan, y algunos caen
fuera del acuario.
1.1.4 El agua
A parte de las características de temperatura y aireación que debe tenerse en cuenta para
mantener un ciclo vital óptimo para el pez, es necesario considerar otras características del
agua, tales como la dureza, el pH, y saber cuando es necesario realizar el cambio del agua
del acuario donde se encuentran almacenados.
Dureza. La dureza indica la cantidad de sales de calcio y magnesio disueltas en el agua,
entre mayor concentración de sales, más dura y entre menor, más blanda (Tabla 1.3). La
dureza se mide en grados americanos o alemanes, un grado alemán equivale a 18º
americanos.
Tabla 1.3 Clasificación del agua según la dureza
TIPO DE AGUA
Excesivamente dura
Muy dura
Dura
Semidura
Blanda
Muy blanda
DUREZA (grados americanos)
720/1080
360/720
220/360
144/216
72/144
0/72
Una dureza normal para un acuario en general es de 100 grados americanos. Si el agua es
muy dura, cuando se evapora deja una capa de color blanco amarillento en el borde del
acuario, si el agua es blanda forma con el jabón una espuma suave, si el agua es dura la
espuma es pegajosa.
La dureza del acuario varía con el tiempo que lleve el agua almacenada, por ejemplo en el
caso de los peces tropicales, la temperatura del agua hace que ésta se evapore produciendo
que los minerales queden en el interior y se combinen con el anhídrido carbónico, formando
bicarbonatos solubles.
Para ablandar el agua excesivamente dura es necesario mezclar agua destilada o lluvia con
agua común del acueducto. El agua del acueducto varía según la localidad, pero en general
6
contiene cloro, que es un veneno para los peces, por tanto es necesario dejarla reposar
durante 48 horas, tiempo en el cual el cloro se desprenderá del agua. No es beneficioso
hervir el agua para quitarle el cloro, debido a que este proceso afecta el pH y la dureza
normal de esta. Para aumentar la dureza del agua, es necesario agregar cloruro de sodio, en
proporción de 5 g, por cada 10 lt.
Los peces de aguas templadas viven en aguas duras y los peces que viven en regiones
tropicales, tales como Amazonas y Río de la Plata, donde se presentan muchas
precipitaciones, viven en agua blanda y escasa de bacterias y microorganismos, que
requieren aguas duras para su desarrollo.
El pH. El pH indica el grado de acidez del agua, debido a la concentración iones de
hidrógeno. Es necesario controlar el pH en el acuario, ya que la elevación de éste ocasiona
aumento en la frecuencia respiratoria del pez y enfermedades caracterizadas por puntos
blancos en su piel.
Los valores de pH varían entre 0 y 14. La mayoría de los peces necesitan que el agua tenga
un pH ligeramente ácido (6.8) porque éste favorece las secreciones de la piel de los peces
protegiéndolos contra infecciones.
Generalmente es necesario cambiar el pH alcalino por uno ácido, para esto se debe primero
ablandar el agua (sección 4.2.1), y luego en intervalos de horas separadas agregar gotas de
ácido fosfórico o clorhídrico, en solución al 10% y medir el pH hasta obtener el valor
deseado. Cuando el agua es muy ácida debe agregársele bicarbonato de sodio para
aumentar su pH.
Cambio de agua del acuario. Los peces dentro de su proceso natural producen
excrementos que contaminan y turban el agua donde se encuentran, por tanto, sino se hace
un cambio oportuno ésta puede ocasionar infecciones y enfermedades que terminan en la
muerte del animal.
Además de cambiar el agua del acuario para garantizar su limpieza y una ambiente
adecuado para los peces, es necesario, aspirar el fondo del acuario, por lo menos dos veces
a la semana, para eliminar las impurezas y residuos gruesos. Además, Hay que reponer el
agua que se evapora diariamente y una vez por semana cambiar 1/3 del total con agua
debidamente preparada, es decir que posea los valores de dureza, pH y temperatura
adecuados.
7
1.2. CAN
En 1983, Robert Bosch y su grupo de investigadores, comenzaron estudios sobre el
desarrollo de un protocolo para el área de control automotriz y en 1986 presentaron
oficialmente el resultado obtenido bajo el nombre de Controller Area Network (CAN). CAN
se definió como un protocolo de Bus de comunicación serial para aplicaciones en tiempo
real, orientado a trabajar con dispositivos inteligentes, sensores y actuadores, dentro de
diversos sistemas, orientado actualmente a diferentes campos además del automotriz.
El bus CAN define la capa de enlace y parte de la capa física, dos de las siete capas del
modelo OSI, como se ve en la figura 1.1, las capas restantes no son definidas por la
especificación y deben ser implementadas por el diseñador, de acuerdo a la aplicación.
Figura 1.1 Relación del Modelo OSI y CAN
CAN
MODELO OSI
APLICACION
PRESENTACIÓN
SESIÓN
TRANSPORTE
RED
ENLACE DE
DATOS
CONTROL LÓGICO DE
ENLACE
CONTROL MEDIO DE
ACCESO
CONTROLADOR CAN
DEFINIDO POR
LA ISO 11898
SEÑALIZACION FISICA
FÍSICA
TRANSCEIVER CAN
MEDIO FISICO
CABLES Y CONECTORES
La capa de enlace se divide en dos, el enlace de control lógico y el control de acceso medio.
El enlace de control lógico maneja las notificaciones, filtrado de mensajes y restablecimiento
8
de las funciones de administración. El control de acceso medio se encarga del
encapsulamiento y desencapsulamiento de datos, detección y control de errores, proceso de
bit stuffing y transmisión serial, en resumen se encarga de todo lo relacionado con el
protocolo de comunicación.
La señalización física es la parte de la capa física definida por CAN que se encarga de la
codificación y descodificación de bit, el tiempo de bit y la sincronización, es decir, se encarga
de las características eléctricas relacionadas con la transmisión de bits entre nodos
diferentes. El medio físico, los cables y los conectores no están definidos por la
especificación, así que deben ser escogidos por el diseñador una vez conocidos los
requerimientos de señalización física necesarios.
1.2.1 Propiedades del protocolo CAN.
El protocolo CAN tiene las siguientes propiedades:
•
Flexibilidad de configuración: Un nodo puede ser agregado a la red sin necesidad de
cambiar la configuración de software o de hardware presentes en el sistema.
•
Recepción multicast: Un mensaje CAN es diferenciado por el campo llamado
IDENTIFICADOR, que no indica el destino del mensaje, pero si describe el contenido
del este. Cada nodo posee un filtro por medio del cual puede aceptar un mensaje o
rechazarlo, como consecuencia, el sistema se convierte en multicast en el cual un
mensaje puede estar dirigido a varios nodos al mismo tiempo, como se puede
observar en la figura 1.2.
Figura 1.2 Ejemplo transmisión MULTICAST
NODO TX
NODO RX
FILTRO
FILTRO
BUS CAN
FILTRO
FILTRO
FILTRO
NODO RX
NODO RX
NODO RX
9
•
•
•
Prioridad de mensajes: El IDENTIFICADOR define una prioridad para el acceso al
bus.
Multimaestro: Cuando el bus esta libre, cualquier nodo puede empezar la transmisión
de un mensaje, y el mensaje con mayor prioridad ganara la arbitración del bus.
Detección error : Retransmisión automática de mensajes corruptos tan pronto como
bus este libre de nuevo.
Para mayor información sobre el protocolo CAN, referirse al Anexo A.
10
2. ESPECIFICACIONES
El control supervisor CAN, es un sistema que permite el manejo centralizado de algunas
variables ambientales tales como, aireación, temperatura e iluminación, necesarias para
garantizar la supervivencia de peces ornamentales que se encuentran en bodegas de
almacenamiento.
Este sistema esta conformado por ocho módulos de hardware y una aplicación de software
que interactúan entre sí para permitir al operador de la bodega, el conocimiento del estado
del lugar por medio de historiales y mensajes de alarma y la manipulación de otras variables
por medio de programación de tareas.
Existen cuatro tipos de módulos en el sistema:
• Módulo principal: Es el encargado de solicitar, recibir, interpretar y reportar al
computador, el estado de las variables bajo supervisión, a través de el bus CAN.
• Módulo de temperatura: Es el encargado de medir la temperatura de la bodega en un
determinada zona y reportar su valor cada vez que el módulo principal se lo solicite.
Existen cuatro módulos de temperatura en el sistema.
• Módulo de aireación: Es el encargado de supervisar la presencia de aire en 16
acuarios y reportar el estado cada vez que el módulo principal lo solicite. El número
de módulos de este tipo, varía de acuerdo a la cantidad de acuarios que deseen ser
supervisados, el sistema permite un número máximo de 32 módulos, es decir 512
acuarios.
• Módulo de comunicaciones: Es el encargado de traducir los mensajes provenientes
del computador al sistema y viceversa.
Además se cuenta con una Interfaz de comunicación tipo BUS, que utiliza el protocolo CAN.
La estructura general de sistema puede ser observada en la figura 2.1.
11
Figura 2.1 Diagrama en bloque general del sistema
INTERFAZ DE
COMUNICACIÓN
MÓDULO PRINCIPAL
UNIDAD DE
COMUNICACIÓN
INTERFAZ
ADMINISTRADOR
RS232
DISPLAY
2X16
DETECTOR DE
CRUCE POR CERO
LÍNEA
OPTOACOPLADOR
PIC18F258
BLOQUE
ILUMINACIÓN
TRIAC1
O SW1
BOMBILLO1
PIC18F458
OPTOACOPLADOR
TRIAC6
O SW6
BOMBILLO6
MCP2551
OPERACIONES
ALARMA
SONORA
NOTIFICACIONES
MCP2551
CAN
Bus
MCP2551
PIC18F248
...
DETECTOR
FALLA
AIREACIÓN
ACUARIO 1
DETECTOR
FALLA
AIREACIÓN
ACUARIO 16
MÓDULO AIREACIÓN
EXPANSOR
MCP2551
MCP2551
MCP2551
MCP2551
PIC18F248
PIC18F248
PIC18F248
PIC18F248
MCP6024
MCP6024
MCP6024
MCP6024
LM35
LM35
LM35
MÓDULOS DE SESORES DE TEMPERATURA
LM35
TRANSCEIVER
CAN
SESOR
TEMPERATURA
2.1 ESPECIFICACIONES HARDWARE
Las especificaciones de cada uno de los componentes del sistema se describen en las
siguientes tablas:
MÓDULO PRINCIPAL
ESPECIFICACIÓN
Microcontrolador
Número de entradas análogas (Voltaje de LInea)
Número de salidas análogas (Bombillos)
Voltaje
Corriente
Número de entradas-salidas digitales(Bus de datos)
Tasa de transmisión de datos
Voltaje de alimentación
Consumo de corriente
Frecuencia de trabajo
Tipo de alimentación
Alimentación suplementaria
Dimensiones ( largo x ancho x alto)
Conectores –Puerto busCable de comunicación
ACCESORIOS
VALOR
PIC18F458
2
6
115
1
1
125.000
5
0.5
60
BUS CAN
Directamente
a la linea
23 x 18 x 11
RJ45
UTP
LCD OPTREX DMC16207 (2x16 - Líneas x caracteres)
Alarma Sonora
Interruptor Alarma sonora
3 Leds de visualización de alarmas
Pulsador de reset del sistema
UNIDAD
V
A
Kb/s
V
A
Hz
cm
-
MÓDULO DE TEMPERATURA
ESPECIFICACIÓN
Microcontrolador
Número de entradas análogas (Sensor de
temperatura)
Número de entradas-salidas digitales(Bus de datos)
Tasa de transmisión de datos
Rango de temperatura
Voltaje de alimentación
Consumo de corriente
Frecuencia de trabajo
Tipo de alimentación
Dimensiones (largo x ancho x alto)
Conectores –Puerto busCable
ACCESORIOS
Display doble 7 segmentos para visualización
Sensor de temperatura LM35DZ
14
VALOR
PIC18F258
1
UNIDAD
-
1
125000
0 – 50
5
100
60
BUS CAN
11 x 11 x 6
RJ45
UTP
Kb/s
ºC
V
mA
Hz
cm
-
MÓDULO DE AIREACIÓN
ESPECIFICACIÓN
Microcontrolador
Número de entradas análogas (Sensor de
presencia de datos)
Número de entradas-salidas digitales(Bus de datos)
Tasa de transmisión de datos
Voltaje de alimentación
Consumo de corriente
Frecuencia de trabajo
Tipo de alimentación
Dimensiones (largo x ancho x alto)
Conectores –Puerto busCable
ACCESORIOS
Sensores de presencia de agua
Número de sensores
Separación mínima terminales de los sensores
15
VALOR
PIC18F258
16
UNIDAD
-
1
125.000
5
120
60
BUS CAN
16 x 11.5 x 8
RJ45
UTP
Kb/s
V
mA
Hz
cm
-
16
3
cm
MÓDULO DE COMUNICACIÓN
ESPECIFICACIÓN
Microcontrolador
Número de entradas-salidas digitales(Bus de datos,
serial)
Tasa de transmisión de datos -CAN-RS232Voltaje de alimentación
Consumo de corriente
Frecuencia de trabajo
Tipo de alimentación
Dimensiones (largo x ancho x alto)
Conectores –Puerto CAN-Puerto RS232Cable
BUS CAN
ESPECIFICACIÓN
Estado de bit dominante en el hilo CANH
Estado de bit dominante en el hilo CANL
Estado de bit recesivo
Impedancia
Longitud máxima
Máximo numero de nodos
Offset entre tierras
Resistencia de terminación
Tasa de transmisión de datos
Tolerancia del oscilador
Voltaje DC
Voltaje transiente
16
VALOR
PIC18F258
2
UNIDAD
-
125.000
115.200
5
45
60
BUS CAN
8.5 x 6 x 4
RJ45
DB9
UTP
Serial 3 hilos
Kb/s
Kb/s
V
mA
Hz
cm
-
VALOR
2.75 a 4.50
0.50 a 2.25
2a3
120
500
100
-12 a 12
120
125.000
0.5 a 1.5
-40 a +40
-250 a 250
UNIDAD
V
V
V
m
V
Kb/s
%
V
V
2.2 ESPECIFICACIONES SOFTWARE
• Supervisión remota de la temperatura: 0 – 50 °C, Promedio y en cuatro puntos
distribuidos.
• Supervisión remota de la presencia de aireación en 11 Secciones equivalentes a 512
acuarios
• Control y supervisión remota de la iluminación de la bodega: 6 áreas
• Almacenamiento, edición y consulta de información especifica de los acuarios:
• número de acuario, número de peces, especie, sección, módulo que lo supervisa
• Reporte automático de alarmas: mensajes de alerta, visualización de alarmas recientes:
Falla en módulo de temperatura
Falla en módulo de aireación
Falla en acuario
Alarma en valor de temperatura (rango configurable por el usuario)
• Consulta de Historial de fallas y alarmas por fecha y tipo de falla.
• Consulta de curvas de temperatura: últimos 5 días, y por horas.
• Consulta del estado de supervisión general del sistema más reciente.
• Programación de mensajes para la ejecución de tareas.
• Configuración del identificador de los módulos de aireación:
Agregar módulo
Quitar módulo
Cambiar ID módulo
• Requerimientos de Hardware:
Procesador Pentium III 1GB.
256 MB de RAM.
50 MB libres en disco duro.
Se recomienda Windows 2000.
Resolución de monitor 1024x768.
17
3. DESARROLLO
El Sistema de Control Supervisor de las Condiciones Ambientales de una Bodega de Peces
Ornamentales, se conforma por diferentes tipos de módulos, encargados de realizar una o
más tareas diferentes dentro de la labor principal del sistema, como es la supervisión.
Para ello se desarrolló todo el protocolo de capas superiores en OSI a partir del protocolo de
comunicación CAN, permitiendo que todo el conjunto de módulos estén dispuestos para
llevar a cabo el procesamiento de datos e información, generación de alarmas, ejecución de
procesos instantáneos o que hayan sido previamente programados, visualización de tareas y
almacenamiento de información. Como se ve en la figura 3.1 el sistema se encuentra
conformado por cuatro tipos de módulos, un módulo principal, un módulo de
comunicaciones, cuatro módulos de temperatura, módulos de aireación cuyo número puede
aumentar, de acuerdo a las necesidades de la bodega, de 0 a 32 y una interfaz gráfica a
través de un computador que comunica la arquitectura del sistema con el operario o usuario
final del producto.
Figura 3.1 Diagrama general del sistema
18
En un principio se pensó en desarrollar el sistema supervisor por medio de interrupciones,
aprovechando las capacidades multimaestro del protocolo CAN, es decir que cada módulo,
de manera independiente, enviara mensajes concernientes a la variable bajo inspección
cada determinado tiempo y que estos mensajes fueran administrados y transmitidos por el
módulo principal al computador. Este método fue analizado y probado pero generó pérdida
de información en el bus, debido a que el módulo principal recibía todos los mensajes pero
ocasionalmente generaba una señal de alerta de overflow producida por el alto número de
mensajes en el bus con destino a éste módulo, que tiene solo dos bufers de recepción. El
problema del overflow en este sistema, es causado por tramas regulares (sin errores), que
es reconocida por cualquier módulo presente en el bus, pero que su destinatario final no
puede recibir en ese momento, por encontrarse con sus registros de datos de entrada llenos,
lo que quiere decir que no se da retransmisión automática al haber sido reconocida por otros
módulos, y porque al no recibirla en sus registros el módulo que la recibe no tiene la
capacidad de solicitar la retransmisión.
Debido a lo anterior, se planteo la posibilidad de desarrollar un algoritmo en el módulo
principal, en cual se solicitara cada determinado tiempo, el estado de las variables bajo
supervisión a los diferentes módulos, pero a cada tipo de módulo a la vez, por ejemplo
primero temperatura luego aireación. Al realizar el análisis de este método se concluyó que
la administración de los módulos de aireación sería complicada, debido a su característica de
ser expandibles, y en el momento de tener los 32 módulos en el sistema se produciría el
mismo efecto de overflow del caso anterior.
Se decidió por tanto llevar a cabo el proceso de supervisión de manera periódica y específica
sobre las variables de temperatura y aireación, conociendo el tipo y número de módulos
presentes en el sistema, con el fin de poder preguntar por cada módulo y esperar respuesta
de cada uno dentro de un periodo de tiempo determinado antes de continuar la rutina.
Mientras esto sucede el sistema se encuentra en capacidad de atender acciones tales como
manipular la iluminación, cambio y actualización de la constitución de la red, y consulta de
información y estados, por parte del usuario, en la aplicación del computador en tiempo real.
De forma general, dentro de la rutina de supervisión, la primera tarea que se realiza es la
solicitud del número de módulos de aireación presentes en el sistema con el fin de incluirlos
en la rutina mencionada; éste dato se encuentra disponible en una base de datos en el
computador. Luego se revisa el estado de las variables de temperatura y aireación y se
reportan a la aplicación, en donde se procesan de una manera adecuada para que sean
entendibles por el usuario, al igual que el número de módulos de aireación presentes; la
base de datos guarda de manera ordenada otra información relevante como fallas en los
módulos, fallas de aireación, variaciones de temperatura y datos sobre los acuarios bajo
supervisión. Con esta información se da lugar a la siguiente labor, solicitar al computador el
estado de fallas presente en el sistema, para que las personas que se encuentren trabajando
19
dentro de la bodega y no tengan acceso directo a la aplicación, puedan también conocer el
estado del sistema a través de un visualizador presente en el módulo principal. Por último, se
generan alarmas sonoras a partir de las variables almacenadas que indican estado de falla.
Este proceso se encuentra resumido en el diagrama de flujo de la figura 3.2.
Figura 3.2 Diagrama de flujo general del sistema
INICIO
Configuración
del sistema
Tiempo de
espera para
configuración
Petición número
de módulos de
aireación
configurados
Petición estado
de la
temperatura
Petición estado
de la aireación
de los acuarios
Petición de falla
para reporte en
display
Reporte alarma
sonora
20
3.1 DESCRIPCIÓN DEL PROTOCOLO DE SUPERVISIÓN
La comunicación de los diferentes módulos se realiza por medio de seis tipos de mensajes:
Mensaje de respuesta
Mensaje de petición
Mensaje de confirmación
Mensaje de orden
Mensaje de alarma
Mensaje de reporte
Cada mensaje dentro de la comunicación tiene su propio identificador, ya sea un mensaje
CAN o RS-232. El identificador para CAN indica tanto el significado de los datos como la
prioridad. En la tabla 3.1 se presentan los diferentes tipos de mensajes CAN organizados de
mayor a menor prioridad. Debido a la característica cíclica de algunas tareas, hay mensajes
que nunca competirán por el bus, por tanto su prioridad no es tan relevante como otros. Por
ejemplo, un mensaje de respuesta a petición del valor de temperatura, nunca competirá con
uno de respuesta a estado de un módulo de aireación, en cambio si podrá competir con un
mensaje de orden de encendido de luces, que se genera de manera esporádica.
El criterio utilizado para la asignación de prioridades, fue la frecuencia de aparición del
mensaje en el bus y la repercusión que traería si éste no es atendido de inmediato. La más
alta se prioridad se asignó a las alarmas de aireación, ya que la aireación, se presenta como
la variable más critica bajo supervisión, es decir, sino no es atendida de inmediato el riesgo
de mortalidad de los peces es mayor que si existiera una falla en la temperatura. La
respuesta al número de módulos de aireación que se encuentran supervisando acuarios en
el sistema, también es un dato importante, ya que sin éste no se sabrá por cuales módulos
se debe preguntar en la rutina de supervisión y por lo tanto no se supervisará el estado de un
número determinado de acuarios, lo que lo convierte en un mensaje de alta prioridad. Los
mensajes de petición de configuración de módulo de aireación poseen alta prioridad, pero a
diferencia de los dos anteriores, no tienen este tipo de prioridad por la importancia del
contenido del mensaje sino porque son poco comunes en el bus de datos y se atenderán
rápidamente.
21
Tabla 3.1 Identificadores de los mensajes CAN del sistema
TIPO
ID
0x021
0x030
0x031
0x032
0x033
0x041
0x042
0x05X
0x061
0x101
0x104
0x105
0x106
0x107
0x201
0x202
0x204
0x300
0x31X
0x400
0x510
SIGNIFICADO DEL MENSAJE
Alarma de aireación en algún acuario
Respuesta a petición número de
módulos de aireación presentes en el
sistema
Respuesta a petición de configuración
de módulo de aireación
Orden de cambiar ID o desconfigurar
módulo
Petición
de
confirmación
de
configuración
Petición de configuración
Respuesta a petición de confirmación
de configuración del modulo
Petición modulo de temperatura No X
Petición modulo de aireación
Reporte no responde modulo de
aireación
Petición numero de módulos de
aireación
Reporte no responde un modulo de
temperatura
Reporte temperatura cuatro módulos de
aireación
Reporte de la temperatura promedio del
sistema
Orden de prender la luz
Orden apagar la luz
Respuesta de petición de errores a ser
reportados en el Display.
Petición fallas para reportar al display
Respuesta a petición temperatura
modulo X
Respuesta a petición estado de
aireación de acuarios bajo supervisión
Confirmación de estado de la luz
DE
Principal
Supervisor PC
PARA
Supervisor PC
Principal
Supervisor PC
Supervisor PC
Aireación
Principal
Aireación
Principal
Aireación
Aireación
Aireación
Supervisor PC
Supervisor PC
Principal
Principal
Principal
Temperatura X
aireación
Supervisor PC
Principal
Supervisor PC
Principal
Supervisor PC
Principal
Supervisor PC
Principal
Supervisor PC
Supervisor PC
Supervisor PC
Supervisor PC
Principal
Principal
Principal
Principal
Temperatura X
Supervisor PC
Principal
Aireación
Principal
Principal
Supervisor PC
Supervisor PC
Los mensajes CAN que viajan por el BUS son filtrados en cada nodo, por medio de estos
identificadores, para ello los microcontroladores empleados en el desarrollo del sistema
cuentan con un bloque de filtrado de mensajes, el cual emplea dos herramientas al comparar
22
con el identificador del mensaje entrante, las mascaras y los filtros de aceptancia. Los filtros
guardan el valor del identificador (11 bits), determinado en la configuración inicial, de los
mensajes que serán de interés para el nodo en particular, las máscaras se utilizan para
indicar cuales bits de los 11 del identificador serán revisados al ejecutar el proceso de
filtrado, es decir cuales serán comparados contra el mensaje entrante, esto para poder hacer
mas organizado y rápido el proceso, al poder tener distintos tipos de mensajes de interés
para el mismo nodo y así aceptarlos más rápido sin necesidad de revisar todo el
identificador. El proceso descrito anteriormente, se expresa en la tabla 3.2 y la figura 3.3.
Tabla 3.2 Tabla de verdad de filtros y máscaras
Bit n del
Bit n máscara Bit n filtro
identificador
0
1
1
1
1
x
0
0
1
1
x
0
1
0
1
Aceptado
o
rechazado
Aceptado
Aceptado
Rechazado
Rechazado
Aceptado
Figura 3.3 Ejemplo manejo filtro y máscaras
0X330
0X031 0X030
0X330 0X031 0X030
0X330 0X031 0X030
MÁSCARA ---- 0xFFF
MÁSCARA ---- 0xFF0
MÁSCARA ---- 0x00
FILTRO --- 0x031
FILTRO --- 0x031
FILTRO --- 0x031
Los microcontroladores cuentan con dos filtros de recepción para evitar pérdida de
información por overflow, denominados RXB0 y RXB1, el primer filtro cuenta con dos
posibilidades de filtros y una máscara, y el segundo cuenta con cuatro posibilidades de filtros
e igualmente una máscara, permitiendo agrupar los mensajes según su significado.
23
Otro tipo de mensajes empleados en la comunicación del sistema hacia el computador,
viajan sobre el protocolo RS-232. Al transmitir un mensaje vía RS232 no es necesario el
manejo de prioridades en los mensajes, debido a que se trata de un enlace punto a punto,
por tanto los identificadores se utilizan para distinguir el significado del contenido de los
mismos, y se permite que existan mensajes hacia el computador con el mismo identificador
de aquellos que provienen del mismo. En la tabla 3.3 se muestran los identificadores de los
mensajes que van hacia el computador y en la tabla 3.4 los que vienen del computador.
Tabla 3.3 Identificadores de los mensajes de transmisión al PC
TIPO
ID
1
2
3
4
5
6
7
9
10
11
20
SIGNIFICADO DEL MENSAJE
Petición numero de módulos de
aireación
Alarma de aireación en algún acuario
Petición de configuración
Reporte no responde módulo de
aireación
Reporte no responde un módulo de
temperatura
Reporte temperatura cuatro módulos de
temperatura
Reporte de la temperatura promedio del
sistema
Petición fallas para reportar al display
Confirmación de estado de la luz
Petición de estado de la aplicación
Respuesta a petición de confirmación
de configuración del módulo
DE
Principal
Principal
Aireación
Principal
Principal
Principal
Principal
Principal
Principal
Supervisor PC
Aireación
Tabla 3.4 Identificadores de los mensajes de recepción del PC
TIPO
ID
1
2
3
4
5
SIGNIFICADO DEL MENSAJE
Orden de prender la luz
Orden apagar la luz
Respuesta a petición de configuración
de modulo de aireación
Orden de cambiar ID o desconfigurar
modulo
Petición
de
confirmación
de
configuración
24
PARA
Principal
Principal
Aireación
Principal
Aireación
Principal
Aireación
6
7
8
9
Respuesta a petición numero de
módulos de aireación presentes en el
sistema
Respuesta de petición de errores a ser
reportados en el display
Reporte aplicación de supervisión
abierta y se puede iniciar la transmisión
al PC
Reporte aplicación de supervisión
cerrada, parar la transmisión al PC
Principal
Principal
Supervisor PC
Supervisor PC
3.2 MODULO PRINCIPAL
El módulo principal es el corazón del sistema; sus funciones son solicitar y recibir la
información de temperatura, aireación e iluminación, solicitar fallas a reportar a través del
display y reportar el estado actual de las variables bajo supervisión a la aplicación de
software presente en el computador.
El módulo se divide en (figura 3.4):
Bloque de administración e interpretación de la información
Bloque de iluminación.
Bloque de alarma sonora.
Bloque de reporte visual.
Bloque de comunicaciones.
Figura 3.4 Diagrama en bloques del módulo principal
Reporte visual
Comunicación
Administración
e interpretación
Alarma sonora
Iluminación
25
BUS
CAN
3.2.1 Administración e interpretación.
Como su nombre lo indica, este bloque se encarga de interpretar los datos provenientes del
módulo de comunicaciones y tomar decisiones acerca de ellos. También, es el que
administra el orden en el que se debe ejecutar el algoritmo de supervisión y atender las
interrupciones que se puedan generar ya sea por un mensaje de recepción CAN,
interrupción del temporizador 0, interrupción del comparador o interrupción externa
presentada en el pin RB1 del microcontrolador, como se explica luego.
La rutina principal del programa esta conformada por 39 casos, los cuales se ejecutarán
todos o algunos, dependiendo del número de módulos de aireación que se encuentren
presentes en el sistema. En cada uno de los casos se transmite un mensaje diferente de
solicitud del estado de una variable involucrada en el proceso de supervisión, luego de cada
solicitud, se inicia un temporizador (Timer0) aproximadamente de 8 ms, tiempo de espera en
el cual se debe recibir alguna respuesta, si no es así, el módulo realiza un nueva transmisión
de solicitud e inicia de nuevo el temporizador, si pasados tres intentos no se recibe
respuesta, se genera una acción en la cual se avisa que existe algún error que debe ser
solucionado por el operario.
El primer caso que ejecuta es la solicitud del número de módulos de aireación presentes en
el sistema, si ocurren tres interrupciones del temporizador y no se obtiene una respuesta, el
sistema reporta un mensaje en el display de error (ver sección de reporte visual) y ningún
otro caso se lleva a cabo. Si el mensaje de respuesta llega exitosamente, se continúa con el
siguiente caso correspondiente a la petición del valor de temperatura a cada módulo de
temperatura.
Cada vez que se solicita un módulo de temperatura y éste no responde, se envía un mensaje
al supervisor del computador, reportando estado de falla. Cuando ya se ha realizado la
solicitud a los cuatro módulos de temperatura, el bloque se encarga de calcular, teniendo en
cuenta el número de módulos que respondieron a la petición de temperatura, el valor
promedio de la variable en el lugar y envía un mensaje al computador reportando dicho valor,
el número de módulos que se tuvieron en cuenta para calcularlo y la temperatura que cada
módulo reportó por aparte.
En los casos del 6 al 37 se solicita el estado de aireación de los acuarios de la bodega, de
acuerdo a los módulos presentes, es decir, si no existe un módulo en el sistema no se
solicita su estado; para esto el microcontrolador debe revisar las variables donde se
encuentran almacenados los números de los módulos que están supervisando. Cada vez
que el módulo no responde se reporta error al computador y cada vez que exista una
respuesta satisfactoria a la solicitud de su estado, se interpretan los datos recibidos, para
26
saber si alguno de los acuarios que están bajo supervisión, presenta estado de falla; de ser
así, se transmite un mensaje de alarma al computador, indicando los acuarios sin aire y el
módulo al cual pertenecen.
En el último caso se realiza la rutina de alarma sonora, la cual no genera ningún mensaje de
solicitud, por tratarse de un proceso dependiente únicamente de la información presente en
el módulo principal (ver sección alarma sonora), de igual manera, se realiza el reporte visual
de fallas a través de un display (ver sección reporte visual). En este punto, la rutina vuelve a
comenzar, y se solicita de nuevo el estado de la temperatura y así sucesivamente. El caso
uno sólo se ejecuta cada vez que el módulo es reiniciado, debido a que si existe algún
cambio en la configuración de los módulos de aireación (quitar módulo, cambio de
identificador o agregar nuevo módulo) se generan mensajes automáticos desde el
computador que actualizarán pertinentemente el tipo de cambio, al módulo principal.
El diagrama de flujo mostrado en el Anexo B, resume el algoritmo realizado por este bloque,
incluyendo la rutina principal y las rutinas de interrupción y atención a eventos.
3.2.2 Iluminación.
La bodega cuenta con seis zonas de luz, las cuales se manejan de manera independiente,
de acuerdo a las necesidades del operario que se encuentre trabajando en ella. Por esta
razón, el módulo principal cuenta con seis salidas de iluminación, para prender o apagar una
o más zonas simultáneamente. Adicionalmente, el módulo cuenta con dos salidas que
permiten escoger si se desea controlar la iluminación de forma gradual, por medio del
mensaje enviado desde la aplicación (modo controlado), ó por acción mecánica del
interruptor de la bodega (modo manual), el cual no permite el control gradual de la luz.
Cuando el sistema se encuentra apagado, el modo manual esta por defecto, cuando el
sistema entra en funcionamiento, se hace un cambio automático a modo controlado.
Para la conmutación entre modo controlado y modo manual, se utilizó un relé de 5 V, el cual
es controlado por medio de una señal originada en el microcontrolador, esta señal provoca la
conmutación del relé entre sus estados, normalmente abierto y normalmente cerrado. El
interruptor manual de cada bombillo, se encuentra alambrado al pin normalmente cerrado del
relé, estado por defecto del sistema, y el TRIAC se encuentra alambrado al pin normalmente
abierto, como se puede observar en la figura 3.5.
27
Figura 3.5 Conmutación estado manual o controlado. Esquemático
VCCA
R1
trisw1
R4
180
220
6
1
U1
MOC3010
Q1
TRIAC A1A2G
2
b1 (microcontrolador)
R7
10k
Q4
4
Q2N2222
K1
0
VCCA
f ase
6
1
4
SW1
3
5
2
RELAY SPDT
D1
D1N4148
J1
Q7
1
2
3
ma1 (micro)
10k
R10
Q2N2222
trisw1
SW1
f ase
CON3
0
En modo controlado cuando el microcontrolador recibe la orden de prender o apagar la luz
de una o mas zonas, inicia un conteo de pulsos a través de los temporizadores internos,
cuyo objetivo es controlar el ancho de pulso de la señal de disparo del TRIAC. El número de
pulsos esta determinado por el valor de un comparador interno, este se inicia con un valor
máximo para el caso del encendido de la luz, y un valor mínimo para el caso del apagado, en
este punto se habilitan las interrupciones tanto del comparador como la interrupción externa
(detector de cruce por cero), que determina cuando la línea tiene un voltaje de cero, señal
que sirve para sincronizar el proceso de control gradual en el encendido apagado de la
iluminación.
Para el detector de cruce por cero se utilizó un transistor, que realiza la función de detector.
Mientras la señal de la línea tenga un voltaje menor a 0.6 V el transistor se satura y con un
voltaje mayor, el transistor se corta. Esta señal indica aproximadamente cuando la línea llega
a un valor de cero voltios y sirve como sincronismo del sistema. En la figura 3.6 se muestra
la señal de salida de cruce por cero y la señal de control de los bombillos.
28
Figura 3.6 Señales iluminación
El encargado de permitir la circulación de corriente a través del bombillo es un TRIAC BTB16
el cual es manejado a través de un optoacoplador MOC3010, que separa las señales
digitales de las de potencia, y que se controla a través de una de las salidas digitales del
microcontrolador.
Una vez ocurre la primera interrupción del detector de cruce por cero, se empieza el proceso
de encendido gradual. Uno de los temporizadores del microcontrolador se habilita y cuando
llega al valor asignado al comprador, éste genera una interrupción, momento en cual el valor
de comparación decrece (apagar la luz) o aumenta (prender la luz) un valor fijo, la señal que
controla la corriente de los bombillos se activa y el temporizador se deshabilita. Cuando
ocurre la interrupción de cruce por cero, la señal de control de los bombillos, se baja, y se
inicia el temporizador de nuevo, para que se genere una nueva interrupción del comparador.
El proceso termina, una vez se hallan realizado cierto número de pasos, dejando la señal de
control en un valor de voltaje alto, permitiendo el paso continuo de corriente por el bombillo
(estado prendido) o en un valor de voltaje bajo (estado apagado); las interrupciones del
comparador y externa se deshabilitan y se envía un mensaje, al computador, de
confirmación del estado de la luz en la bodega. (Ver diagrama de bloques del módulo, figura
3.4 )
29
El valor máximo en el cual se inicia el comprador se estableció con relación a la frecuencia
de la línea y la frecuencia del temporizador de microcontrolador. El temporizador aumenta su
valor después de una ciclo de instrucción, el cual equivale a cuatro ciclos de reloj, lo que
quiere decir que para un reloj de 4 MHz, el temporizador aumentará su valor cada 1 µs.
Como se describió anteriormente la señal de control de los bombillos, varia cada medio ciclo
de reloj, por tanto en este tiempo (8.3 ms), el temporizador puede contar 8300 (0x206C)
ciclos de instrucción y para garantizar el encendido correcto sin picos de iluminación se
asignó valor máximo de 8000 (0x1F40) al comparador. El valor del paso de incremento o
decremento del comparador es de 8 unidades y el valor total de pasos, para llegar a un
estado final, es de 1000, lo que ocasiona un tiempo de encendido y apagado de 8 s, tiempo
adecuado para que los peces no sientan cambios bruscos en dicha variable.
Para mayor información sobre los esquemáticos de este bloque referirse al Anexo C,
esquemáticos módulo principal.
3.2.3 Alarma sonora.
Debido a que la aplicación de supervisión de la bodega se encuentra en el área
administrativa de la misma, surgió la necesidad de implementar un sistema que permitiera al
operario que se encuentra trabajando directamente en el área de los acuarios, enterarse de
las fallas que se presentan. La alarma sonora es la solución a dicha necesidad, en el
momento en el que se presenta una falla, tal como la ausencia de algún módulo en la rutina
periódica o de falta de aireación en algún acuario, la alarma sonora se activa y seguirá en
ese estado hasta que el problema sea corregido. La alarma sonora además cuenta con un
interruptor que permite habilitarla o deshabilitarla.
El módulo principal dentro de su rutina está revisando continuamente las fallas en el sistema,
en el momento en el que se presenta cualquiera de ellas, una variable cambia de estado.
Durante la rutina de alarma sonora se revisa el estado de esa variable, si ésta se encuentra
en un nivel alto, la señal que controla la alarma se activa durante un tiempo de seis
segundos y se desactiva otros seis; pasado ese tiempo se vuelve a revisar si aun existe
algún tipo de falla, si es así, la alarma se activa nuevamente, de lo contrario se desactiva
hasta que se presente una nueva falla.
La alarma sonora es independiente de la aplicación en el computador, el microcontrolador
activa y desactiva las señales de control de la misma, de esta forma si la aplicación se cierra
o ocurre algún error grave en el computador, se podrá conocer si existe una falla en el
sistema. Como complemento a esta alarma se implementaron tres leds indicadores de falla
30
que le permiten identificar al operario, de una forma mas clara, el tipo de falla que se esta
reportando.
El esquemático del circuito de la alarma se puede consultar en el Anexo C. Se utilizó un
transistor para disminuir la corriente de salida del microcontrolador, un interruptor para
poderla deshabilitar de forma manual y un diodo de protección para evitar sobrecargas en el
zumbador.
3.2.4 Reporte visual.
Para el reporte visual de alarmas se utilizó un display LCD DMC OPTREX de dos líneas, el
cual, a diferencia de la alarma sonora, permite conocer con exactitud el tipo y el número de
módulo que esta fallando, el estado de funcionamiento del sistema y falla en la
comunicación con el computador.
El módulo principal tiene la capacidad de saber qué tipo de falla existe, pero el que hace
realmente el proceso de identificación del número de módulo, de acuario o la zona de
temperatura que esta en éste estado, es la aplicación. Por esta razón, el reporte visual
depende directamente de la información almacenada en el computador, y en el momento
que éste se ausente, el microcontrolador se da cuenta y el bloque de visualización reportará
error en la comunicación con el computador, aviso que se mantiene hasta que se inicie de
nuevo la aplicación.
Otro mensaje importante que se muestra a través del display, es el que indica la necesidad
de reiniciar el módulo a través del botón de RESET. Esta situación se presenta cuando el
sistema se inicia y pide el número de módulos activos en la red y no recibe información al
respecto, error grave, pues necesita de este valor para iniciar la supervisión de las variables.
Antes de empezar la rutina de reporte visual, es necesario configurar el display para
indicarle aspectos tales como el número de líneas que va a emplear para los mensajes. Una
vez configurado, el módulo principal envía un mensaje solicitando los errores en el sistema y
espera la respuesta, que al llegar es interpretada, y enviada de manera adecuada al display
para ser mostrada.
31
3.2.5 Bloque de comunicaciones
El módulo principal se comunica con todos los elementos de la red a través del protocolo
CAN de topología tipo bus. El módulo de comunicaciones se encarga de administrar la
transmisión y la recepción de mensajes presentes en el bus, de una manera adecuadamente
a través del buffer de recepción y transmisión, las máscaras y filtros de este módulo, ver
tabla 3.5.
Tabla 3.5 Máscaras y filtros del módulo principal
MÁSCARA FILTRO
0x310
0xFF0
0x200
0x031
0x400
No usado
No usado
0xFF0
A través del filtro uno, se reciben los mensajes provenientes de los módulos de temperatura
y a través del filtro dos, las órdenes que tienen que ver con la iluminación. El filtro tres recibe
los mensajes que contienen el número de módulos presentes en el sistema, el cuatro el
reporte de estado de aireación y el cinco y el seis no se usan.
Cada vez que llega un mensaje, el bloque de comunicaciones lo descarga lo mas rápido
posible para evitar overflow y como consecuencia perdidas de mensajes en el bus. Para la
transmisión de mensajes el bloque se encarga de cargar cualquiera de los cinco bufer que
encuentre vacíos y esperar que el bus este libre para transmitirlo. En la tabla 3.1 (mensajes
CAN), se observan los diferentes tipos de mensaje que él transmite con sus respectivos
identificadores y a quien son dirigidos.
Este bloque cuenta con un transceiver que se encarga de convertir la señal de transmisión
en diferencial y de esta forma protegerla del ruido presente en el ambiente, asi como de
asegurar los voltajes respectivos manejados por el protocolo en el BUS. De la misma forma
recibe la señal diferencial y la convierte en una señal referida a tierra.
32
El diagrama de bloques puede ser consultado en el Anexo B, en cual se especifica la rutina
principal, rutinas de visualización y rutinas de atención a interrupciones.
3.3 MÓDULO DE TEMPERATURA
El módulo de temperatura se divide en (figura 3.7):
Bloque de sensado
Bloque de amplificación
Bloque de filtrado
Bloque de conversión análoga digital
Bloque de procesamiento de datos
Bloque de comunicaciones
Figura 3.7 Diagrama en bloques del módulo temperatura
MUESTREO
BUS CAN
AMPLIFICACIÓN
FILTRADO
CONVERSIÓN
ANÁLOGA
DIGITAL
PROCESAMIENTO DE
DATOS
COMUNICACIÓN
3.3.1 Bloque de muestreo.
Este bloque está conformado por un semiconductor LM35D cuyo voltaje de salida es
linealmente proporcional al valor de temperatura ambiente en grados centígrados. Éste
33
sensor no necesita calibración externa y proporciona una precisión, a temperatura ambiente
de ± ¼ °C, óptimo para medir la temperatura de la bodega cuya variación se encuentra en
el rango de 20 °C a 33 °C y en el momento de realizar un control las variaciones a detectar
son de 1 °C, lo que concuerda con la precisión brindada por éste. El sensor es capaz de
manejar una capacitancia de carga menor a 50 pF, por tanto se incluyó una resistencia de
carga de 200 Ω a la salida del dispositivo lo que hace que la capacitancia del cable se
convierta en un bypass de tierra a fuente. Además se utilizó una configuración recomendada
por el fabricante, para tomar muestras de temperatura remotamente e inmunizar al sensor de
ruido en el ambiente. (Ver esquemáticos, Anexo C, módulo de temperatura)
3.3.2 Bloque de amplificación.
El nivel de voltaje entregado por el sensor se relaciona con la temperatura medida a través
de la siguiente ecuación:
Vo = 10mV * (Tamb + 10°C )
Para el rango de temperaturas que se desea medir (0 °C - 50 °C) el valor de voltaje
entregado por el sensor varía de 0.1 V a 0.6 V, para adecuar esta medida a un valor óptimo
para el conversor análogo digital, se implementó una amplificador no inversor con una
ganancia de 7.5.
En este bloque, se utilizó un operacional referencia MPC6022 cuyas especificaciones se
presentan en la tabla 3.6.
Tabla 3.6 Especificaciones operacional MPC6022
ESPECIFICACIÓN
Entrada/salida
Ancho de banda
Voltaje de
alimentación
Rango de temperatura
Voltaje de offset max.
VALOR
Rail-to-rail (VSS - 0.3V a VDD + 0.3V)
10 MHz
2.5 V- 5.5 V
-40 °C a 80 °C
±500 µV
34
La característica rail-to-rail del operacional, permite tener una señal de entrada con
variaciones mayores a las de un amplificador convencional lo que se refleja en una valor de
ganancia mayor al que se le pueda dar a un amplificador convencional, además, el voltaje
de offset bajo, garantiza que la conversión realizada por el ADC sea de alta precisión
debido a que el voltaje entregado por el sensor no se modifica de manera considerable en la
amplificación.
3.3.3 Bloque de filtrado.
En el diseño de un dispositivo donde interviene uno o más convertidores análogo digital, es
necesario tener ciertas consideraciones para evitar y rechazar el ruido del ambiente que
generalmente se suma a la señal de entrada del ADC, produciendo conversiones erróneas.
Por esta razón, el módulo de temperatura cuenta con un filtro Butterworth pasabajos (antialiasing) topología Sallen-Key (ver figura 3.8), que debido a la baja frecuencia de variación
de la temperatura rechaza señales de frecuencia mayor a 1KHz.
Figura 3.8 Filtro Butterworth empleado en el módulo de temperatura
Al tener una frecuencia de muestreo de ADC de 125 kHz, las señales que tienen una
frecuencia menor a la mitad de ésta (62.5 kHz) son las que se desean digitalizar (criterio de
Niquist), pero si existen algunas señales con una frecuencia mayor a 62.5 kHz, serán reflejas
en la porción de banda de interés y el ADC no podrá discernir entre una señal de alta
frecuencia y una de baja, por tanto el filtro también fue diseñado para que la atenuación de
las frecuencias mayores a la mitad de la frecuencia de muestreo sea lo suficientemente alta,
de tal manera que éstas sean transparentes para al convertidor. En resumen los criterios
que se tuvieron en cuenta en el diseño del filtro son:
Ganancia de banda constante y unitaria.
Frecuencia de corte de 1kHz..
35
Frecuencia de muestreo del convertidor análogo digital de 125 kHz.
Atenuación de 68 dB a la mitad de la frecuencia de muestreo.
La respuesta en frecuencia del filtro se puede observar en la figura 3.9.
Figura 3.9 Respuesta en frecuencia del filtro Butterworth de ωc=1 kHz
3.3.4 Bloque de conversión análogo digital.
El conversor análogo digital usado, es el interno del microcontrolador PIC18F258, el cual es
un conversor por aproximaciones sucesivas de 10 bits, cuya referencia puede ser externa o
interna.
Antes de empezar alguna conversión se lleva a cabo la configuración del ADC teniendo en
cuanta los siguientes pasos:
•
•
•
•
Configurar el pin RA0 como entrada de señal análoga
Establecer la referencia interna igual a la fuente de polarización del microcontrolador
Escoger el canal 0 (AN0) como el canal de entrada
Establecer el reloj de conversión. Para la selección del reloj de conversión se tuvo en
cuenta el mínimo tiempo de adquisición requerido para este tipo de ADC, 16 µs, así
para el reloj del módulo de 4 MHz, el tiempo de reloj adecuado es de 125 kHz.
Al terminar la configuración, el ADC, entra en estado de espera de orden de inicio de
conversión, señal enviada por el bloque de procesamiento de datos. Cuando recibe dicha
36
orden, el ADC se abre y espera un tiempo de 20 µs, necesario para que el condensador
interno sobre el cual se hace la medida de la señal a convertir, se haya cargado voltaje de la
señal de entrada. Después de este tiempo, se le da la orden de iniciar la conversión y
cuando el resultado este listo se envía al bloque de procesamiento.
La exactitud de la respuesta de la conversión, de acuerdo a la resolución del ADC, está dada
por: 10 bits equivalen a 210=1024 paso de voltaje y resolución=5/1024 (paso de voltaje por
bit) 4.88 mV.
3.3.5 Bloque de procesamiento de datos.
Este bloque, como se mencionó anteriormente, es el encargado de ordenar al ADC iniciar la
conversión y recibir el resultado de la misma. Adicionalmente debe procesar dicho resultado,
entregarlo al bloque de comunicaciones y visualizarlo correctamente en un display 7
segmentos.
Cuando el bloque de procesamiento recibe el mensaje de solicitud de temperatura
proveniente del modulo principal, le ordena al ADC realizar 10 conversiones, para obtener
una medida más aproximada a la temperatura real ambiente y almacena el resultado en un
bufer. Teniendo las 10 medidas, se realiza el promedio de ellas, y el resultado es entregado
al bloque de comunicaciones.
Debido a que el modulo no cuenta con un circuito integrado para manejar el display 7
segmentos, el bloque de procesamiento debe tomar la señal promedio de las 10
conversiones, relacionarla con la temperatura, por medio de la ecuación del sensor (ver
bloque de amplificación) y la ganancia dada a la señal, y a través de un algoritmo
implementado en el microcontrolador, (ver Anexo B, diagrama de flujo de módulo de
temperatura), mostrar la temperatura en el display.
3.3.6 Bloque de comunicaciones.
El módulo de temperatura al igual que los demás módulos de la red, se comunica a través
del protocolo CAN de topología tipo bus. El módulo de comunicaciones se encarga de
administrar la transmisión y la recepción de mensajes presentes en el bus de una manera
adecuada a través del bufer, las máscaras y filtros de este módulo.
37
Tabla 3.7 Máscaras y filtros del módulo temperatura
MÁSCARA FILTRO
0x05X
0xFFF
No usado
No usado
No usado
0xFF0
No usado
No usado
En la tabla 3.7 se puede observar que solo se utiliza el filtro 1, debido a que solo hay un
mensaje en el bus de su interés –solicitud modulo de temperatura X- de la misma forma el
módulo tiene un único mensaje de transmisión hacia el modulo principal, reportando el valor
de la temperatura medida. El valor asignado al filtro 1 depende del numero del numero del
modulo (ver tabla 3.8).
Tabla 3.8 Valores del filtro de los diferentes módulos de temperatura
No de módulo
1
2
3
4
Valor Filtro 1
0x051
0x052
0x053
0x054
Este bloque cuenta con un transceiver que se encarga de convertir la señal de transmisión
en diferencial y de esta forma protegerla al hacerse dos veces más grande que la señal de
ruido presente en el ambiente. Se puede deducir que también debe hacer el proceso inverso
al recibir una señal diferencial y convertirla en referida a tierra.
38
3.4 MÓDULO DE AIREACIÓN
El módulo se aireación se divide en (ver figura 3.10)
Bloque de muestreo
Bloque de administración
Bloque de comunicaciones
Figura 3.10 Diagrama de bloques del modulo de aireación
SENSOR
ADMINISTRACIÓN
COMUNICACIONES
BUS CAN
3.4.1 Bloque de muestreo.
Para detectar la presencia de aire en el sistema, en una primera aproximación se considero
emplear acelerómetros, con el fin de detectar el movimiento del agua causado por la
agitación del aire circundante en la cercanía del tubo de aireación, y por lo tanto la presencia
de aire en el acuario. Otra opción considerada fue implementar pequeños sistemas
mecánicos a base de engranajes y leds infrarrojos, cuya función seria detectar el movimiento
de los piñones por causa igualmente de la agitación del agua en cercanía al tubo de
aireación.
Teniendo en cuenta las necesidades de la bodega y las cualidades que debe tener un sensor
apropiado para esta, este se escogió de acuerdo a:
Costos de acuerdo al número de acuarios presentes en una bodega de este tipo.
Resistencia frente al proceso de cambio de agua en el acuario y al aseo del filtro que
soporta la manguera que suministra el aire al acuario.
39
El costo elevado de un acelerómetro (10 US) descartó esta posibilidad, mientras que la
opción mecánica se veía limitada por el trato al que se ven sometidos los acuarios
diariamente en el trabajo de la bodega.
Por lo tanto se decidió implementar un sensor de paso de agua, instalado en el interior de la
manguera que lleva la aireación a cada acuario. Cuando el flujo de aire es interrumpido por
cualquier causa, la manguera se llena de agua, el sensor la detecta y cambia su estado; en
el caso contrario, en el cual el sistema de aireación se encuentre funcionando correctamente,
la presión del aire, no permite el ingreso de agua en la manguera y el estado del sensor es
diferente al descrito anteriormente (ver figura 3.11).
Figura 3.11 Topología del sensor para detectar falla en el sistema de aireación
SENSOR
MANGUERA
SOPORTE
FILTRO
ACUARIO CON
AIREACIÓN
ACUARIO SIN
AIREACIÓN
El circuito consta de dos cables conductores y dos transistores bipolares que se cortan o se
saturan. Los conductores, son los que se encuentran en la parte interior de la manguera y
están separados cierta distancia para evitar que al juntarse o en la presencia de una burbuja
de agua dentro de la manguera, se generen fallas erróneas. Uno de los conductores se
encuentra conectado a una de las terminales de una resistencia que se encuentra enlazada
a fuente y el otro se encuentra conectado a la base de un transistor. En el momento en el
que se detecta presencia de agua en la manguera, por medio de sus propiedades
conductivas, el voltaje de fuente se refleja en la base del primer transistor, saturándolo,
estado de falla. Mientras el agua no penetre en la manguera, el voltaje en la base del primer
40
transistor es cero, asegurando el transistor en estado de corte, estado de no falla. El
segundo transistor cumple la función de inversor. El esquemático del sensor se muestra en
la figura 3.12 y de manera más amplia en el Anexo C, esquemáticos módulo de aireación.
Figura 3.12 Esquemático del sensor de aireación
VCCA
VCCA
R6
VCCA
R8
R9
SALIDA
Q2N2222
Q2N2222
R7
R10
2 1
CONDUCTOR
0
0
0
3.4.2 Bloque de administración.
En la red CAN de supervisión de la bodega, existe un número variable de módulos de
aireación, de acuerdo a la cantidad de acuarios de almacenamiento que se tengan. El
sistema desarrollado tiene la capacidad de supervisar 512 acuarios, es decir como máximo
soporta 32 módulos de este tipo. De acuerdo a lo anterior, el módulo de aireación es de tipo
expandible, es decir, el propietario puede adquirir cualquier número de módulos (dentro del
rango mencionado) y en el momento en el que requiera uno mas, no se necesita de ningún
tipo de configuración complicada por parte de operario del sistema para instalar el módulo,
simplemente debe conectarlo a la red y a través de un procedimiento sencillo guiado en la
aplicación del computador, la configuración se llevará acabo.
El bloque de administración es el encargado del proceso de configuración del módulo,
confirmación de la configuración y de revisar y reportar el estado de la aireación del los
acuarios que tiene bajo supervisión.
Cada vez que un módulo es activado, lo primero que hace es revisar si tiene un identificador
asignado o si es un módulo nuevo, proceso que realiza a través de la lectura de una
dirección específica de su memoria EEPROM; si el resultado de la lectura es 256, significa
que es un nuevo módulo que necesita ser configurado, el bloque de administración detecta
este estado y genera un mensaje CAN de solicitud de configuración. El mensaje lo recibe
directamente el computador, que a través de la base de datos, reconoce los identificadores
41
ya asignados para este tipo de módulos y le presenta como posibilidad al usuario los que no
se encuentran asignados, para que él libremente asigne un ID cualquiera.
Una vez configurado el módulo, éste recibe un mensaje de solicitud de confirmación de
configuración, lo que genera una nueva lectura de la memoria EEPROM y enviar mensaje de
confirmación de configuración exitosa. Cabe resaltar, que el módulo principal debe enterarse
de la existencia de un nuevo módulo configurado exitosamente para incluirlo en la rutina de
supervisión, por tanto los mensajes de configuración y de confirmación también son dirigidos
al bloque de comunicaciones del módulo principal (ver sección módulo principal).
El módulo que presenta una configuración exitosa se pone en modo de espera de un
mensaje CAN, en este caso aquel que hace solicitud del estado de los acuarios que tiene
bajo supervisión. Cuando este mensaje llega, el módulo lee los puertos en donde se
encuentran los sensores y los reporta a través de un mensaje dirigido al módulo principal.
Adicionalmente el sistema cuenta con la posibilidad de retirar un módulo o cambiarle el
número de identificación. Ambos procesos causan cambio del dato almacenado en la
EEPROM, en el caso de retirar un módulo, se guarda un 256 en la dirección de memoria
destinada a la configuración, de ésta forma el módulo será desconfigurado y podrá ser
retirado de la red sin generar errores de ningún tipo, para ser configurado nuevamente el
módulo debe ser desconectado de la red. En el caso de cambio de identificación, el dato que
se almacena en EEPROM, es el nuevo ID enviado desde la aplicación. La utilización de la
memoria EEPROM permite conservar la configuración del identificador en los módulos
cuando el sistema se apaga por alguna razón, por lo tanto no es necesario configurar los
módulos de aireación cada vez que el sistema se enciende. Este proceso es descrito en el
Anexo B, diagrama de flujo módulos de aireación.
3.4.3 Bloque de comunicaciones.
El módulo de aireación al igual que los demás módulos de la red se comunica a través del
protocolo CAN de topología tipo bus. El módulo de comunicaciones se encarga de
administrar la transmisión y la recepción de mensajes presentes en el bus, de una manera
adecuadamente a través del bufer, las máscaras y filtros de este módulo.
42
Tabla 3.9 Máscaras y filtros del módulo aireación
MÁSCARA FILTRO
0xFF0
0xFFF
0x031
No usado
0x061
No usado
No usado
No usado
Los módulos de aireación cuentan con el mismo valor de máscaras y filtras en cada uno, lo
que causa que todas los mensajes de configuración dirigidos a un módulo específico, sean
aceptados por todos los demás módulos existentes en el sistema a través del filtro 1, al
igual que los mensajes de petición que son aceptados a través del filtro 3; por tanto, el
bloque de comunicaciones debe discernir, de alguna otra manera y no a través del
identificador de la trama, como en los otros módulos, que mensajes de estos le conciernen a
él y no a otro módulo.
La identificación de los mensajes de interés para cada módulo de aireación se hace por
medio del primer dato transmitido en la trama CAN. El módulo recibe el mensaje, descarga el
dato 0 y lo compara con el ID que tiene guardado en la memoria EEPROM; si coinciden toma
el mensaje y lo pasa al bloque de administración para ser interpretado, sino simplemente lo
descarta.
3.5 MODULO DE COMUNICACIÓN CON EL COMPUTADOR
Este módulo realiza la función de intérprete entre el computador y la red CAN. Está
encargado de obtener, descifrar y proveer todos y cada uno de los datos presentes en el bus
de forma adecuada al computador usando el puerto serie como medio de comunicación,
como también se encarga de tomar los mensajes provenientes del computador y
comunicarlos con el resto de hardware del sistema, usando como medio un BUS CAN. En la
figura 3.13 se puede observar el diagrama de bloques de este módulo
43
Figura 3.13 Diagrama en bloques módulo de comunicación con el computador
CONVERSIÓN DE
PROTOCOLOS
Datos RS-232
COMPUTADOR
BUS CAN
Este módulo cuenta con dos tipos de interrupciones, recepción de un mensaje CAN y
recepción de un mensaje RS-232, que se encuentran con diferente nivel de prioridad. Los
mensajes CAN al ser más frecuentes y repetitivos tienen una prioridad menor que los
mensajes RS-232, de otra forma el algoritmo de este módulo, se dedicaría a atender solo
mensajes CAN e ignorando la mayor parte del tiempo aquellos provenientes del computador,
que al no ser repetitivos tienen alta probabilidad de perderse o generar overflow en el bufer
de recepción de la USART, lo que causa serios problemas en el proceso de supervisión de
la bodega. (ver diagrama de bloques módulo de comunicación)
Para la transmisión de mensajes al computador, se implementó un protocolo de
comunicación que viaja sobre RS-232, el cual consiste de (figura 3.14):
Identificador. Es el que le permite al computador o al sistema CAN, interpretar
correctamente los datos para saber su significado y realizar tareas de acuerdo a su
contenido. Existen 11 mensajes diferentes a transmitir al computador (ver tabla 3.3) y
9 mensajes diferentes que provienen del computador, por esta razón y pensando la
posibilidad de agregar otros mensajes que se requieran en un futuro, se destino un
byte para este campo de la trama.
Datos. La longitud de la trama de datos depende de la dirección de transmisión al
computador. Cuando baja un mensaje del computador la longitud de los datos es de
6 y cuando suben es de 8, valores que fueron asignados de acuerdo al número de
datos máximos a transmitir en cualquiera de las dos vías.
Checksum. Es la parte de la trama usada para detectar posibles errores durante la
transmisión del mensaje RS-232, cuyo valor depende del resultado de la suma de
cada uno de los datos y el identificador y su longitud es de 2 Bytes.
44
Figura 3.14 Trama RS-232
IDENTIFICADOR
(1 Byte)
DATOS
(7 – 9 Bytes)
CHEKSUM
(2 Bytes)
Cuando el módulo recibe un mensaje por medio de la USART, primero distingue el
contenido del mismo a través del identificador, luego descarga los datos transmitidos, calcula
el checksum de esta parte de la trama, y por último compara el valor calculado con el
transmitido en el mensaje, si no coinciden, se solicita retransmisión al computador y si
coinciden se transmite un mensaje CAN con un identificador de acuerdo al contenido del
mensaje recibido por la USART.
Además de recibir y transmitir datos, el módulo de comunicaciones también se encarga de
detectar el estado de la aplicación del computador, cada vez que en la red CAN se inicia el
proceso de supervisión; esto se hace por medio de un mensaje de identificador 11 que el
módulo de comunicación transmite al computador, si la aplicación se encuentra abierta, se
enviará un mensaje de confirmación que le indica al módulo que puede iniciar la transmisión
de datos de subida, mientras no se reciba esta confirmación no se subirán datos. En el
momento en el que todo el sistema se encuentre supervisando correctamente y la aplicación
se cierra, el módulo recibe un mensaje del computador que le indica que debe parar la
transmisión al computador hasta nueva orden, es decir cuando la aplicación sea iniciada de
nuevo.
Al igual que todos los bloques de comunicación de cada modulo, la recepción de mensajes
provenientes del bus CAN se lleva a cabo a través de bufers controlados por los filtros y
máscaras CAN. Los valores de los filtros y las máscaras se pueden observan el la tabla 3.10.
Tabla 3.10 Máscaras y filtros del módulo de comunicación con el computador
MÁSCARA FILTRO
0x100
0xFF0
0x300
0x041
0x021
0x510
No usado
0xFF0
45
El filtro 1 recibe los mensajes relacionados con la iluminación, solicitud del número de
módulos de aireación activos, falla de los módulos de temperatura y reporte de temperatura;
el filtro 2 recibe el mensaje de solicitud de las fallas a ser reportadas en el display; el filtro 3
recibe los mensajes relacionados con la configuración de un módulo de aireación; el filtro 4
recibe la alarma de falla en el sistema de aireación: el filtro 5 recibe la confirmación del
estado de la iluminación y el filtro 6 no se usa.
Como todos los módulos del sistema, cuenta con un transceiver para el bus CAN que se
encarga de convertir la señal de transmisión en diferencial y de igual forma recibir una señal
diferencial y convertirla en referida a tierra. Adicionalmente cuenta con un transceiver para
RS 232 (MAX232) que se encarga de convertir las señales de voltaje a niveles adecuados
para el computador y para el microcontrolador.
3.6 SOFTWARE SUPERVISOR
El software supervisor es el encargado de procesar, almacenar y administrar los mensajes
provenientes de los diferentes módulos de la red. Se divide en dos partes, un ambiente
gráfico desarrollado en el programa Visual Basic y una base de datos Access, que se
comunican entre sí por medio de sentencias SQL.
La base de datos guarda información de supervisión relevante para el buen funcionamiento
del sistema a través de tablas que se clasifican según su información en (ver figura 3.15):
Tablas de alarmas
Alarmas de módulo de aireación
Alarmas de acuario sin aire
Alarmas de módulo de temperatura
Alarma de temperatura fuera del rango
Tablas de información
Número de módulos de aireación en el sistema
Información de los módulos de aireación
Detalles de acuarios
Cambios de temperatura en un día
Tablas para supervisión
Datos de la última supervisión realizada en el sistema
Rango normal de temperatura
Programación de tareas
46
Figura 3.15 Tablas de la base de datos
El tipo de programación que se empleó en el desarrollo de la aplicación de software, es
orientada a objetos, donde el programa no actúa de una manera cíclica, sino responde a
eventos generados, a través del puerto de comunicación RS-232 por la recepción de
mensajes o por medio de acciones manuales realizadas por la intervención directa del
administrador de la aplicación. La atención de mensajes recibidos por el puerto COM, se
describe de manera específica, en el diagrama de flujo de la aplicación Anexo B.
La respuesta a los eventos origina:
3.6.1 Supervisión de temperatura.
Existen tres tipos de mensajes CAN que recibe el computador, a través del módulo de
comunicación, relacionados con la temperatura, reporte del valor de la temperatura de cada
uno de los módulos, reporte de la temperatura promedio de la bodega y reporte de estado de
alarma de uno de los módulos. En los dos primeros casos el computador recibe en los datos
del mensaje, el valor de voltaje equivalente a la temperatura, por esta razón antes de ser
mostrados en la interfaz gráfica, se ejecuta un algoritmo de transformación a temperatura
por medio del uso de la ecuación del sensor y el valor de la ganancia dada a la señal medida
por el mismo. La interfaz cuenta con cinco termómetros distribuidos en la pantalla principal,
de esta manera, el operario puede conocer tanto el promedio, como el valor de la
temperatura en las diferentes zonas donde se encuentran los sensores. El algoritmo de
transformación también es utilizado para animar el termómetro donde se presenta la
temperatura promedio.
47
Figura 3.16 Visualización valor de la temperatura por zonas
Estado OK
Termómetro
Ventana de valor
temperatura
de la
promedio
temperatura
Termómetro
de zona
Figura 3.17 Visualización temperatura promedio de la bodega
En el tercer caso, el software interpreta el número de módulo que falló y genera un mensaje
de alerta en la pantalla, como se ve en la figura 3.18.
Figura 3.18 Visualización falla en el módulo de temperatura
Ventana de
reporte de falla
en módulo de
temperatura
Estado Falla
Como evento manual, el administrador del programa puede configurar niveles de
temperatura máximos y mínimos permitidos en el hábitat temporal de los peces, cuyos
valores se almacenan en la base de datos. De esta forma, cada vez que se recibe el
promedio de la temperatura se determina si esta dentro del rango preestablecido y si se sale
de éste, se genera un mensaje de alarma en la pantalla que se mantendrá mientras la
temperatura no se normalice.
48
Figura 3.19 Ventana configuración modulo de temperatura
El sistema almacena, cada media hora, en la base de datos, el valor de la temperatura
promedio de la bodega y a través de éstos valores genera gráficas donde se puede observar
las variaciones de esta variable durante el día o la noche, así en caso de presentarse
enfermedades o muerte de los peces, las gráficas pueden ayudar a determinar si fueron
causadas por el un cambio brusco de esta variable.
Figura 3.20 Ventana de visualización variación de la temperatura en un día
49
3.6.2 Supervisión del estado de aireación.
En el caso de aireación dos tipos de mensaje CAN son recibidos a través del módulo de
comunicaciones, el primero es de reporte de módulo que no responde y el segundo de
alarma de un acuario con falla en el suministro de aire. El primer evento produce la
generación de un mensaje de alerta en la pantalla que reporta el número de módulo que no
responde en el sistema, figura 3.21.
Figura 3.21 Visualización falla en el módulo de aireación
La interpretación del segundo mensaje es un poco mas compleja, debido que en el momento
en el cual el módulo fue configurado, se le asigna un intervalo fijo de acuarios pertenecientes
a una sección de la bodega, que no tiene relación con el número de identificador que le fue
asignado. Por este motivo, el computador, en el momento de recibir un mensaje de este tipo,
realiza un algoritmo en el cual lee de la base de datos la información que relaciona el
número de módulo con la sección a la que pertenece y el rango de acuarios que supervisa,
información que junto con los datos recibidos en el mensaje, genera mensajes de alarma de
acuario. En el momento en el que un mensaje de alarma se interpretado, el recuadro del
mapa de supervisión en la ventana principal que representa la sección con estado de falla,
cambia su color a rojo y haciendo clic sobre ella se podrá conocer exactamente que acuario
esta en estado de alarma; una vez resuelto el problema, el color de la sección y el acuario
vuelve automáticamente al que representa estado normal.
50
Figura 3.22 Visualización de fallas en el acuario
Vista ventana principal
Vista específica de una sección
3.6.3 Control del encendido y apagado de la luz.
El encendido y apagado de la luz, se realiza por eventos manuales generados por el usuario
en la ventana principal, ya sea al oprimir un botón de encendido o apagado, o seleccionar
opción de modo manual o controlado de la iluminación, como se observa en la figura 3.23.
Cuando se selecciona un modo de iluminación, la aplicación envía un mensaje de reporte de
cambio en el modo, y espera recibir confirmación de cambio exitoso, sino se recibe dicho
mensaje en un intervalo de tiempo determinado por un temporizador, una ventana avisara al
usurario que no se pudo realizar el proceso.
Al oprimir el botón de prender o apagar, una ventana del mapa de la bodega que ilustra la
distribución de las áreas de iluminación, se abre. En esta ventana se pueden seleccionar las
áreas que desean ser iluminadas, teniendo en cuenta el estado actual de cualquiera de ellas,
de prendido o pagado, de esta manera las áreas sobre las cuales se ha ejercido una acción
de iluminación previamente conservarán su estado para el momento en que se desee
realizar la siguiente operación sobre la iluminación, por ejemplo, si se dio la orden de prender
la luz en el área 1 y área 2 una variable guarda este estado, por tanto en el momento en el
que se seleccione la opción de prender la luz, el área 1 y 2 no están habilitadas. De igual
forma si se desean apagar y solo estas dos zonas tienen la luz encendida, el usuario solo
51
podrá enviar la orden de apagar una de las dos o las dos zonas, las demás estarán
deshabilitadas.
Figura 3.23 Ventanas de control de iluminación
Acción
Modo de iluminación
Pantalla principal
Venta zona de iluminación
Cuando se ejecuta la acción iluminación, el software interpreta la información del recuadro
de encendido de luces (ver figura 3.23), y de acuerdo a esta, arma una trama que le indica al
modulo principal el tipo de acción a realizar y sobre cuales áreas. En este caso también se
espera recibir un mensaje de confirmación, para generar un aviso de proceso exitoso.
3.6.3 Configuración de módulos de aireación.
Como se observa en la figura 3.24, los módulos de aireación realizan transmisión automática
de un mensaje de solicitud de configuración al computador, evento que produce la carga de
una ventana de configuración que contiene la información de los números de módulos que
han sido configurados, el número de identificador de módulo disponibles para ser asignados,
y el rango de acuarios que el módulo va a supervisar, información que se obtiene por medio
de la interpretación de datos almacenados en la tabla de información de los módulos de
aireación de la base de datos. Cuando la información de configuración ha sido enviada al
módulo, se lleva a cabo la transmisión de un mensaje de confirmación de la configuración, si
se recibe respuesta, la base de datos es actualizada con la información del modulo entrante,
sino se avisa al usuario que se presentó algún problema en el proceso.
52
Figura 3.24 Proceso de configuración de módulo de aireación
Solicitud de configuración
Respuesta de configuración
Supervisor PC
Módulo de aireación
Solicitud de configuración
Solicitud de confirmación
Respuesta de confirmación
El programa permite cambiar el número de identificación o desconfigurar un módulo que se
encuentre activo en la red, en el primer caso la tabla de información del módulo de la base
de datos se modifica, en el segundo además de esta se modifican también las tablas de
detalles y de número de módulos. Una vez ejecutados estos dos eventos, se solicita
confirmación de cambio de identificación exitoso.
3.6.4 Programación de tareas.
El usuario tiene la posibilidad de programar avisos para recordar ejecución de tareas tales
como:
Encendido controlado de la luz
Apagado controlado de la luz
Cambio de agua de determinado acuario
Alimentación de los peces
La información de la programación de tareas (figura 3.25) es almacenada en la base de
datos y consultada a través de temporizadores que interrumpen el programa cada
determinado tiempo, evento en el cual se revisan si existe alguna tarea a reportar, si es así
se abre una ventana con un mensaje de aviso de la tarea que debe ser realizada a esa hora.
53
Figura 3.25 Ventana de programación de tareas
3.6.5 Consulta de historial.
La consulta de las tablas de alarmas se realiza a través del historial del programa. Las tablas
de alarmas guardan la fecha y hora en el que falló la variable y cuando volvió a estado
normal. La figura 3.26 muestra como está organizada la información en una de las tablas de
alarmas de la base de datos. La consulta del historial se puede hacer de acuerdo a un tipo
de falla especifica presente en uno o todos los elementos de la red.
Figura 3.26 Tabla de alarmas de módulos de aireación
54
3.6.6 Otras tareas.
El uso de la base de datos permite también almacenar, consultar y modificar detalles
específicos de cada acuario de la bodega, que se encuentre o no bajo supervisión como se
ve en la figura 3.27.
Figura 3.27 Ejemplo de ventana de consulta de detalles de un acuario
Además, existe una ventana que permite conocer la hora, fecha y valores de los últimos
datos de supervisón que fueron realizados, de esta forma si por algún motivo se cierra la
aplicación, se podrá conocer el tiempo durante el cual no existió supervisión por parte de la
aplicación.
Figura 3.28 Ventana de información de los datos de la última supervisión
55
3.7 DISEÑO DEL CONTROL DE TEMPERATURA
El calentamiento del agua de los acuarios de la bodega se hace por medio de cinco
quemadores de gas LP, dispuestos en diferentes zonas del lugar, los cuales al calentar el
ambiente, calientan el agua por medio del fenómeno de convección natural, en el cual por
causa de la diferencias de densidad y temperatura entre el aire y el agua tiene lugar un
proceso de transferencia de calor de uno al otro.
Debido a lo anterior, para el diseño del control de temperatura es necesario considerar la
presencia de este fenómeno en el proceso de calentamiento del lugar así como en el
mantenimiento de la temperatura dentro del mismo. A partir de teoría de termodinámica la
ecuación que describe la tasa de calor empleada en un proceso de convección natural,
denominadla ecuación de Newton o ley de enfriamiento es:
Q = hA(∆t )
En donde,
Q
A
∆t
h
Transferencia de calor (Btu/h)
Área de transferencia de calor (ft2)
La diferencia de temperatura entre la superficie y el aire fuera de la
superficie (°F)
Coeficiente de transferencia de calor (Btu/°F*ft2*h)
Para determinar la transferencia de calor, es necesario conocer el coeficiente de
transferencia, este coeficiente depende del coeficiente de expansión, la densidad, la
viscosidad, la aceleración de la gravedad, el diámetro o longitud de la superficie, el calor
específico y de variables dependientes del sistema que son en parte determinadas por la
clase de flujo, turbulento o laminar. De los anterior se determina que el cálculo del coeficiente
es bastante complejo, razón por la cual se tiene ecuaciones deducidas a partir de
mediciones experimentales en las cuales considerando el flujo de aire como turbulento, que
actúa sobre una placa horizontal cuadrada, en donde el lado caliente es el superior
(superficie de los acuarios), se puede utilizar la siguiente aproximación:
h = 0.22(∆t )
56
1
3
Tabla 3.11 Diferencias de temperatura, superficie del agua y ambiente en la Bodega de
peces.
Temperatura aire prom.(°C) Temperatura agua prom. (°C)
28
26.2
28
26.6
28
26.4
Con los valores de la tabla 3.11 y la ecuación de coeficiente para flujo turbulento se
determinó el valor de dicho coeficiente, teniendo en cuenta que las variaciones del
diferencial de temperatura son de 1.8 °C (35.24 °F), 1.6 °C (34.88 °F) y 1.4 °C (34.52 °F),
por tanto el coeficiente varía entre 0.721 y 0.716 Btu/(h* ft2*°F).
Utilizando un valor promedio del coeficiente de 0.72 Btu/(h* ft2*°F), la transferencia de calor
actual en el lugar, teniendo en cuenta los 512 acuarios es de:
A
∆t
h
1.72 ft2 (área de 1 acuario)
34.9 °F
0.72 Btu/(h* ft2*°F)
Q = 22.34 kBtu / h
Debido a las mediciones realizadas en la bodega (ver tabla 3.12 y 3.13), la disminución de la
temperatura en el ambiente produce un cambio muy lento en la temperatura del agua, lo que
permite cortar el flujo de gas durante un tiempo determinado, haciendo que la temperatura
del ambiente promedio baje un grado centígrado mientras que la temperatura del agua
permanece casi constante.
Tabla 3.12 Variación de la temperatura del agua cuando se han cerrado los quemadores.
Hora Temperatura
a.m en el agua (ºC)
7
26
7:30
26
7:40
26
7:50
26
8:00
26
8:10
26
57
8:20
8:30
8:40
8:50
9:00
9:10
9:20
10:00
10:30
11:00
11:30
12:00
26
26
26
26
25.8
25.8
25.8
25.6
25.5
25.5
25.5
25.2
Tabla 3.13 Variación de la temperatura del agua cuando se han abierto los quemadores.
Temperatura agua
Característica
Temperatura una hora después de haber siso
apagado el quemador
Temperatura una hora después de haber siso
encendido el quemador
26.4 ºC
Temperatura
ambiente
27 ºC
26.5ºC
28 ºC
Si la temperatura ambiente baja 27 °C permitiendo una diferencia de temperatura de grado
centígrado , la transferencia de calor sería:
Q = 21.2 kBtu / h
Lo que equivale mantener cerrado el flujo de gas durante un 5% del tiempo del día.
En la bodega de interés, se utilizan un promedio de 18 pipetas de gas de 100 libras al mes
(720 h), cada una con un costo de $48.000, por tanto utilizando el control de temperatura, las
mismas 18 pipetas de gas tendría una duración de 750 h.
Dado que el año tiene 8760 h, el sistema de calefacción sin control consume 219 cilindros al
año equivalentes a un costo de $ 10´513.000. Ahora con el control se calcula un consumo de
210 cilindros al año que equivalen a 10´100.000, lo que implica un ahorro de $413.000
Para saber la viabilidad de la implementación del proyecto es necesario conocer la inversión
para realizar el control de una manera confiable y segura, por tanto es necesario tener en
58
cuenta que los equipos e instrumentación en general deben cumplir con una serie de normas
que se encuentran reglamentadas en los documentos: NFPA 58 Normas para el
almacenamiento y manejo de gases licuados de petróleo. Ratificada a nivel nacional por las
normas NTC 3853 equipo, accesorios, manejo y transporte de GLP. Para escoger los
instrumentos necesarios para la implementación del control de acuerdo a la seguridad que
se debe tener cuando se trabaja con gases tipo GLP se consultaron estas normas, además
de otras relacionadas. Algunos de los aspectos a tener en cuenta para el caso en particular
de este proyecto se mencionan a continuación:
Los contenedores de gas deben instalarse en la parte exterior de la edificación, los cilindros
o pipetas deben estar de acuerdo al capitulo 2 de dichas normas, para su disposición,
distancia a otros, exposición a materiales inflamables y funcionamiento, así como con el
volumen máximo permitido para instalaciones de es tipo, en esta caso 100 lb es un valor
adecuado.
En los quemadores de gas, se debe estar de acuerdo al capitulo 2.6 sobre aparatos de
consumo y cumplir el numeral 2.6.2.2(NFPA 58) que determina que en lugares con
calefacción destinados a la cría de animales, con quemadores sin cuidado se deben tener
dispositivos que corten el paso de gas al ambiente en caso de falla en el piloto o en la llama
de los quemadores.
Las mangueras y tubería utilizada debe cumplir con los numerales 2.4(NFPA 58) de
cañerías, tubería mangueras, para evitar selección equivocada, debe ser de acero flexible o
tubería de cobre, manipulación errada, instalación defectuosa e inadecuada, fugas de gas,
maltrato excesivo, exposición a ambientes no aptos, y riesgo de incendios en caso de fallas
en el sistema.
Los sensores de llama se necesitan para controlar los fallos presentados en los pilotos de los
quemadores de gas, y así impedir acumulación de gas en el ambiente. Según la norma NTC
3531 en sus numerales 4.4.1 y 4.4.2, deben existir estos detectores de falla en el encendido
o en la llama para impedir el paso de gas al ambiente por un tiempo de máximo 60 s. Estos
artefactos también se requieren para ayudar a tener un encendido controlado del quemador
como se enuncia en los numerales 3.2.2.7.
La instalación en general de sistemas que consumen GLP deben cumplir con las normas
NFPA 58 más específicamente con todo lo especificado en el capitulo 2 Instalaciones de
sistemas de Gas LP, en cuanto a selección de los componentes y sus requisitos básicos de
funcionamiento y seguridad.
Por seguridad se recomienda instalar sistemas antiincendios tales como extintores y bombas
que provean herramientas para extinguir el incendio, numeral(NFPA 58) 3.10
59
Almacenamiento de GLP. Se deben tener marcados y debidamente señalizados los
dispositivos de control para las emergencias.
Se recomienda instalar ventilación adecuada para el lugar, ya sea por entradas o salidas de
aire o por medios mecánicos como lo expresa el numeral 7.2.2 de ventilación de estructuras
o edificios.
Se recomienda tener medidores de presión adecuados en cada uno de los cilindros tal como
se enuncia en las norma NTC3853 numerales 2.5.6 y 2.5.7. Así como reguladores a lo largo
de la red de gas en el lugar para interrumpir el paso de gas en caso de falla o aislar sectores
para mantenimiento, válvulas y sistemas de alivio en los contenedores y en la red en
general.
De acuerdo a lo anteriormente expuesto y teniendo en cuenta que la bodega cuenta con 5
quemadores administrados por 2 cilindros de gas propano, se presenta una alternativa para
el equipo necesario para la implementación del control:
•
•
•
•
2 válvulas VE4000 Honeywell
Controladores de ignición FIREEYE.
5 Sensores de llamas Ultravioleta FIREEYE.
4 sensores de temperatura distribuidos, dispuestos en el sistema de
supervisión CAN
• Esquema de control, ejecutado por el sistema de supervisión desarrollado en
torno a la red CAN dispuesta en el lugar.
En la tabla 3.14 se muestran los costos de implementación de control, teniendo en cuenta
que el sistema ya cuenta con los 4 sensores de temperatura distribuidos. De acuerdo análisis
realizado, el tipo de control es ON/OFF por tanto se necesita una válvula ON/OFF que
permita mantener cerrado o abierto el flujo de gas y además que cumpla con condiciones de
seguridad para este tipo de gases. Los sensores de llama se cotizaron en dos diferentes
empresas, FIREYE y UVETRON, las ventajas del controlador FEREYE frente al UVETRON
es que incluye un controlador de ignición. Otra opción a considerar es cambiar los
quemadores actuales de gas que no ofrecen ningún tipo de seguridad por otros quemadores.
Los quemadores Mr. HEATER poseen detector de llama y controlador automático de
ignición, esta podría llegar a ser la opción mas acertada al comparar su costo con el de los
demás elementos de la lista.
60
Tabla 3.14 Tabla de costos implementación del control de temperatura
COSTO UNIDAD COSTO TOTAL
(EN DOLARES) (EN DOLARES)
ACCESORIO
Sensores de llama ultravioleta
UVTRON R2868 + controlador
FIREYE MBFP100S
80
330
400
1.650
LENOX, Control de ignición, 97L4801
190
950
150
300
300
1500
200
1000
Válvula
ASCO 42205 ON/OFF Explosion
proof
Quemador
Mr. HEATER MH170FAVT para gas
propano cilindro de 100 lb.
Mr. Heater MH125FAV para gas
propano cilindro de 40 lb.
A partir de los costos que implican la obtención de todos estos equipos y apoyados en los
resultados del análisis que se hizo sobre el ahorro que el control permitiría realizar en el
funcionamiento normal del lugar, se concluye que la implementación de este control no es
viable, sin embargo se deja en claro que se debe colocar atención a los aspectos
relacionados con la seguridad del lugar, dado que se está manejando gas LP, el cual como
se mencionó debe cumplir con cierta normatividad de seguridad industrial para evitar
accidentes causados por su mala utilización y manipulación.
61
4. RESULTADOS
El sistema fue puesto a prueba en el lugar objetivo de este proyecto y en el laboratorio de
desarrollo para evaluar los resultados alcanzados en el desarrollo del mismo, de esta forma
se llevaron acabo una serie de pruebas para determinar su nivel de desempeño y
funcionamiento.
La red completa, constituida por 4 módulos de temperatura, 2 módulos de aireación, un
módulo principal y un módulo de comunicación, fue conectada y dispuesta alo largo de la
bodega para supervisar las variables de interés y en la zona administrativa de la misma para
la utilización de la aplicación de software.
Se evaluó el comportamiento del sistema durante las horas de la noche en un periodo de las
12:00 a.m a las 4 a.m, y en la horas de la tarde en un periodo de 3:00 p.m a 6:30 p.m, tiempo
durante el cual la aplicación registró los valores de la temperatura cada 15 minutos, y
supervisó el estado de la aireación en 5 acuarios del lugar. Todo esto implica tráfico en el
BUS CAN de supervisón durante todo este tiempo, permitiendo evaluar la confiabilidad de la
comunicación de la información durante este tiempo.
En la prueba de la tarde se tomaron medidas de la temperatura con un termómetro Fluke 51
II, para realizar posterior comparación y análisis con las registradas por la base de datos de
la aplicación de software. A continuación se relacionan los resultados de las pruebas
descritas:
Las pruebas del comportamiento del sistema en la bodega se realizaron bajo un ambiente
húmedo, a una temperatura entre 26 °C y 28 °C. La distribución de los módulos de
temperatura en la bodega se realizó como se muestra en la figura 4.1.
62
Figura 4.1 Condiciones de medida para prueba 1 en bodega
Zona 4
5.40m
6.72m
6.15m
b
a
2.30m
1.8m
Zona 1
2.30m
4
1
1.6m
4m
Zona 3
Zona 2
1.38m
1.87m
3
2
Sensor temp.
Calentador
a gas
Módulo
temperatura
Alturas: 1) 0.40 m
a) 0.20 m
2) 1.43 m
b) 0.40 m
3) 0.44 m
Línea de
acuarios
4) 0.30 m
El análisis de los resultados de estas pruebas se presenta a continuación:
63
Figura 4.2 Temperatura promedio
27,3
Temperatura [ºC]
27,2
27,1
27
26,9
26,8
26,7
26,6
26,5
26,4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Muestras
Figura 4.3 Temperatura por zonas
29,00
28,50
Temperatura [°C]
28,00
Zona 1
Zona 2
Zona 3
Zona 4
27,50
27,00
26,50
26,00
25,50
25,00
24,50
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Muestras
En la figura 4.3 se observan cambios abruptos en el comportamiento de la temperatura,
éstos se deben a cambios realizados en la ubicación de los módulos, a las 2:00 a.m el
módulo de temperatura No 2 se movió de la zona 2 a la posición a de la zona 4 y a las 3:27
a.m el módulo de temperatura No 1 se movió a la posición b, como se muestra en la figura
4.1. Se observa que los módulos que se encuentran a la misma altura presentan un
comportamiento muy similar, y en las zonas altas la temperatura es mayor al igual que en
aquellas que se encuentran mas cercanas a los calefactores de gas.
Para llevar a cabo la comparación entre el sistema CAN y el termómetro digital Fluke 51 II,
se cambió la disposición de los módulos de temperatura como se observa en la figura 4.4. El
64
termómetro Fluke se colocó en diferentes zonas y se tomaron medias cada diez minutos,
que luego fueron comparadas con las almacenadas en la base de datos, los resultados se
muestran en la figura 4.5 (referirse al Anexo D para consultar las tablas de resultados).
4
3
2.56m
Zona 4
Zona 2
6.15m
2
Zona 3
2.84m
1.70m
Figura 4.4. Condiciones de medida prueba 2 en bodega
Zona 1
1.6m
4m
1
1.38m
1.87m
Sensor temp.
Calentador
a gas
Módulo
temperatura
Alturas: 1) 0.75 m
2) 0.61 m
3) 0.68 m
65
Línea de
acuarios
4) 0.61 m
Figura 4.5 Comparación de medidas, sistema CAN-Fluke 51 II en la bodega de peces
29,50
29,00
28,50
28,00
Fluke
27,50
Sist ema
27,00
26,50
26,00
25,50
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Muest r as
Esta prueba se repitió bajo diferentes condiciones ambientales, en un de los cubículos del
edificio de la facultad de Ingeniería de la Universidad Javeriana, en donde el termómetro
Fluke y los módulos de temperatura se encontraban midiendo la temperatura ambiente del
recinto a un distancia mínima uno del otro. Los resultados obtenidos en esta prueba se
muestran en la figura 4.6.
Figura 4.6 Comparación de medidas, sistema CAN-Fluke 51 II
25
24
Temperatura [ºC]
23
Fluke
Sistema
22
21
20
19
1
3
5
7
9
11
13
15
17
19
21
23
Muestra
66
25
27
29
31
33
35
37
39
41
43
Se puede observar que la diferencia absoluta entre las medidas del sistema con las del fluke,
es menor a 0.7 ºC, y el valor promedio de diferencia entre las dos mediciones es de 0.25 ºC
(ver Anexo D, tabla de comparación de medidas realizadas en la bodega JB Peces
Tropicales), lo cual indica que el sistema presenta una respuesta adecuada a la medición de
temperatura bajo diversas condiciones, tal como se determina en la figura 4.6 (ver Anexo D,
tablas de comparación de medidas realizadas en el laboratorio de trabajo) , donde la
diferencia promedio entre las medidas es 0.13 ºC.
A partir de las pruebas realizadas con el sensor de presencia de agua, tanto en la bodega,
en el transcurso de tiempo ya descrito, como en la Universidad Javeriana equivalentes a 30
horas, se determinó que para obtener un funcionamiento adecuado del mismo, la mejor
alternativa es dejar una distancia mínima entre los conductores de 3 cm, y una distancia de
10 cm al interior de la manguera desde uno de sus extremos, debido a que a una distancia
menor se presentan falsas alarmas por causa de burbujas presentes en la interacción del
aire con el agua en el proceso de aireación, mientras que a la distancia sugerida este
inconveniente baja considerablemente, en forma más concreta se presentaron 3 falsas
alarmas en las pruebas, las cuales por su naturaleza desaparecen instantáneamente.
Por otra parte el sistema se muestra efectivo a la hora de reportar las alarmas por falta de
aire, el tiempo de retardo está determinado por la velocidad con la cual el agua penetra en la
manguera hasta alcanzar el par de conductores, siendo en promedio equivalente a 10 s, este
tiempo no es critico para la aplicación y por lo tanto para la supervisión de los acuarios. Sin
embargo cuando se presenta un estado de falla en la aireación el sensor tiende a reportar al
supervisor una alarma intermitente pero constante durante el todo el tiempo que la falla
persista. Los resultados de la supervisión bajo las diferentes condiciones descritas se
muestran en las siguientes tablas (4.1,4.2,4.3) a partir de los registros reportados en la base
de datos de la aplicación.
Tabla 4.1 Reporte de alarmas, acuario 32, distancia entre conductores de 3 cm
No Acuario
32
32
32
32
32
Hora
06:33:08 p.m.
06:38:26 p.m.
06:38:26 p.m.
07:15:46 p.m.
07:15:46 p.m.
67
Fecha
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
Estado
ERROR
Ok
ERROR
Ok
ERROR
Tabla 4.2 Alarmas falsas presentadas, distancia entre conductores de 3 cm
No Acuario
32
32
19
19
32
32
Hora
04:15:33 p.m.
04:15:33 p.m.
05:36:47 p.m.
05:36:47 p.m.
03:47:15 p.m.
03:47:15 p.m.
Fecha
21/10/2004
21/10/2004
27/10/2004
27/10/2004
30/10/2004
30/10/2004
Estado
ERROR
Ok
ERROR
Ok
ERROR
Ok
Tabla 4.3 Alarmas falsas presentadas, distancia entre conductores de1 cm
No Acuario
31
31
31
31
31
31
31
31
31
31
31
31
31
31
Hora
05:17:51 p.m.
05:17:51 p.m.
05:17:53 p.m.
05:17:54 p.m.
05:18:50 p.m.
05:18:51 p.m.
05:18:53 p.m.
05:18:53 p.m.
05:18:58 p.m.
05:18:58 p.m.
05:19:00 p.m.
05:19:00 p.m.
05:19:02 p.m.
05:19:02 p.m.
Fecha
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
30/10/2004
Estado
ERROR
Ok
ERROR
Ok
ERROR
Ok
ERROR
Ok
ERROR
Ok
ERROR
Ok
ERROR
Ok
La red de supervisión y en general el protocolo de comunicación presentó un resultado
satisfactorio en las pruebas realizadas tanto en la bodega como en el laboratorio de
desarrollo, la información de supervisión fue reportada de forma exitosa desde los cuatro
módulos de temperatura, los dos módulos de aireación, a través del módulo principal, en
condiciones normales de operación hacia la aplicación de software de forma continua
durante el tiempo de duración de las pruebas, manteniendo actualizada tanto la base de
datos como el mismo supervisor mostrando el estado de la red en el mismo tiempo. La
distancia de la red equivale a 50 m, distribuidos en topología de BUS dispuesta desde el
computador en la parte administrativa de la bodega en la segunda planta de la edificación
hasta la primera, donde queda el conjunto de acuarios tal como se mostró antes en los
planos de las condiciones de medida.
Las pruebas de desconexión intencional de los diversos módulos procedieron acorde a lo
esperado, la falla es reportada en la aplicación de supervisión luego de reportar la ausencia
del módulo en la rutina de supervisión, del mismo modo cuando el módulo de aireación o de
68
temperatura, es nuevamente conectado, vuelve a entrar en operación normal de forma
correcta. El protocolo de comunicación permite que los errores en el Bus sean transparentes
al usuario, pues estos son detectados y corregidos por el motor CAN retransmitiendo los
mensajes que sean necesarios, de esta forma es preciso enunciar que se presentan
ocasionalmente tramas inválidas en el Bus al conectar un módulo nuevamente a la red,
debidas a manipulación tosca del conector o conexiones desacertadas del mismo, estas
tramas inválidas son detectadas e ignoradas por el resto de módulos. Así mismo en el
tiempo de duración de las pruebas se presentó una falla de comunicación en el Bus debido a
una interrupción en la rutina de supervisión por parte del módulo principal.
La aplicación de supervisión en el computador, reportó y almacenó cada una de las alarmas
y pruebas realizadas, registró la temperatura y no presentó fallas por si misma, su
rendimiento va de la mano con los requerimientos de hardware adecuados, se comprobó la
efectividad de las herramientas de confirmación de tareas hechas sobre la red desde la
aplicación tales como el encendido-apagado de la luz, y la configuración de los módulos de
aireación. Por lo tanto de presentarse errores de comunicación en el bus o por causas
externas se genera desconexión de los módulos de iluminación o de aireación la aplicación
reporta adecuadamente la imposibilidad de llevar acabo estas tareas.
A partir de todos los resultados antes expuestos y del diseño realizado a través de toda la
fase de desarrollo del proyecto, se determina que este cumple satisfactoriamente con los
objetivos propuestos, se ha alcanzado el objetivo de desarrollar un sistema de supervisión
modular distribuido en una red, de variables como la aireación, la iluminación y la
temperatura, se ha elaborado una aplicación de software con distintas posibilidades de
consulta de información relevante para el manejo adecuado del almacenamiento de los
peces así como del estado de funcionamiento de los sistemas bajo supervisión en el lugar.
Por último en la tabla 4.3 se presenta el costo de desarrollo, respecto del presupuesto
realizado al principio del proyecto, no se encuentra muy alejado. Para obtener el costo neto
se han tenido en cuenta tres principales factores, la materia prima, la mano de obra y los
costos indirectos, los incrementos se deben por los cambios que sufrió el esquema general
del sistema planteado. Ahora para obtener un valor o precio final del producto, se tiene en
cuenta un margen de utilidad, además de suponer que de comercializarlo se trabajaría bajo
un esquema en el cual se dispondría una producción en serie en la cual se tendrían costos
variables como los materiales que dependerían de la cantidad de unidades producida,
permitiendo que algunos de los costos antes expuestos bajen en un 50% y por lo tanto los de
producción, como ejemplo se tiene el costo de los circuitos impresos, el costo de los
microcontroladores y de materiales en general, mientras que los costos del grupo humano y
la maquinaria permanecerían constantes, dejando como conclusión final que el producto
podría venderse a un costo total de: $ 8’000.000
69
Tabla 4.3 Tabla de costos del sistema
HORAS X
PERSONA
Director trabajo de grado
24 semanas * 2h
Asesor
24 semanas * 2h
24 semanas
Desarrolladores
*40h*2
TOTAL RECURSOS HUMANOS
INGENIERIA Y APLICACIÓN DE
SOFTWARE
RECURSOS HUMANOS
MATERIA PRIMA
PIC18F458
PIC18F458
PIC18F248
PIC18F258
Sensor temperatura LM35DZ
Sensor aireación (cable dos pares)
Caja plexo IP 55 (módulo principal)
Caja plexo IP55 (módulo
temperatura)
Caja plexo IP55 (módulos de
aireación)
Caja módulo de comunicación
Prensaestopas
Impresos (módulos)
Cajas para bus CAN
Componentes varios
Cable UTP
Cable serial
TOTAL MATERIALES
EQUIPO
Alquiler de equipo
TOTAL EQUIPO
PAPELERÍA
Papel
CANTIDAD
1
1
6
1
4
32 (96 m)
1
4
2
1
10
9
10
50 m
2m
VALOR
HORA
$ 30.000
$ 20.000
$ 15.000
VALOR
UNIDAD
$24.000
$24.000
$21.000
$24.000
$3.500
$250 (1 m)
$55.000
$28’800.000
$31’200.000
$4’000.000
TOTAL
$24.000
$24.000
$126.000
$24.000
$14.000
$24.000
$55.000
$10.000
$40.000
$13.000
$26.000
$8.000
$700
$800
$700
-
$8.000
$7.000
$390.000
$8.000
$150.000
$35.000
$4.000
$1’270.000
Varios
CANTIDAD
2 Resmas
VALOR
UNIDAD
$10.000
70
$1’440.000
$960.000
TOTAL
VALOR
UNIDAD
-
CANTIDAD
TOTAL
TOTAL
$5’000.000
$5’000.000
TOTAL
$20.000
Fotocopias
Empaste
Cartucho
Discos Compactos
Disquetes
TOTAL PAPELERIA
LICENCIAS DE SOFTWARE
800
3
2
10
10
CANTIDAD
Herramienta de desarrollo
1
TOTAL LICENCIAS DE SOFTWARE
COSTOS INDIRECTOS
Energía
Transporte
TOTAL COSTOS INDIRECTOS
TOTAL COSTOS
CANTIDAD
1000 h
600 viajes
71
$50
$10.000
$80.000
$1.000
$1.000
VALOR
MEDIO
$1’500.000
VALOR
UNIDAD
$161
$1.000
$40.000
$30.000
$160.000
$10.000
$10.000
$270.000
TOTAL
$1’500.000
$1’500.000
TOTAL
$161.000
$600.000
$761.000
$44’001.000
5. CONCLUSIONES
La estrategia de supervisión escogida es adecuada para la aplicación en cuestión, ya que la
red diseñada cumple el objetivo de ser una red dedicada a la supervisión de la bodega, y no
tiene funciones tales como la transmisión de datos administrativos o la manipulación de otro
tipo de dispositivos como redes de seguridad o redes de información etc, y por tanto la forma
en que se lleva acabo esta labor, de modo continuo y constante, es acertada para cumplir
con efectividad el objetivo principal del proyecto.
Para el análisis de un sistema que no posee direcciones especificas para cada módulo, es
más recomendable desarrollar un sistema en el cual cada uno de los dispositivos sea
consultado cada determinado tiempo, limitando la libertad que estos tengan para entregar
sus datos sobre el bus de información, esto para evitar la perdida de información por causa
de saturación de información hacia el sistema ante la ausencia de un ente maestro que
regule el trafico en el bus de datos.
En el diseño de este tipo de sistemas es clave determinar y tener en cuenta todos y cada
uno de los entes y variables participantes que afecten el desarrollo del mismo, de ello
depende el éxito de las rutinas de funcionamiento implementadas. Es preciso llevar a cabo
diseños basados en diagramación lógica de los eventos y situaciones que tendrán lugar
dentro de un sistema destinado para un fin como la supervisión de aplicaciones industriales.
Por eso se recomienda ampliamente una fase de planeación y organización de las variables
en papel y de forma teórica, en la cual se puedan revelar los posibles inconvenientes a la
hora de coordinar y hacer funcionar un sistema que se compone de un numero considerable
de módulos a administrar, como es el caso de este proyecto.
La realización de diagramas de flujo es una tarea básica que se hace indispensable para
lograr ordenar y comunicar distintos equipos dentro de un sistemas modular, no es suficiente
contar con la herramienta común que los comunica, como es el protocolo de comunicación,
en este caso CAN, este solo es el primer paso, sino que es necesario desarrollar algoritmos
efectivos que aprovechen al máximo el idioma común de comunicación y aumenten el nivel
de desempeño del sistema para llevar a cabo las labores para las cuales fue diseñado.
Las variables que intervienen en el mantenimiento de este tipo de sitios, son variadas y en
cierto punto complejas una vez que estas se interrelacionan unas con otras, a la hora de
aplicar y desarrollar sistemas de control distribuido o de medición. Es por esto que se han
escogido aquellas más relevantes y que se encontraban al alcance de los medios humano-
72
económicos disponibles para desarrollar el sistema producto de la ejecución este proyecto.
Sin embargo es claro el cuidado que se debe tener al escoger dichas variables, como
ejemplo en la bodega que se trabajó en este proyecto, el sistema de temperatura funciona a
partir de quemadores de gas, lo cual hace la temperatura en este lugar una variable de sumo
cuidado a la hora de desarrollar un sistema automático de control de la misma, puesto que
esto exige tener en cuenta consideraciones de seguridad industrial que en primera instancia
podrían pasarse por alto, pero que una vez tenidas en cuenta pueden generar por sí mismas
la necesidad de dar una solución robusta, segura y efectiva a un control de temperatura
adecuado para el lugar, lo que implica aumento en tiempo, costos y complejidad de un
proyecto de este estilo.
El proyecto desarrollado deja las puertas abiertas a futuros desarrollos en el área de la
supervisión industrial y más aún, en el área del control. Las capacidades del protocolo de
comunicación CAN son apropiadas para diseñar e implementar aplicaciones de este tipo,
desde aquellas sencillas hasta grandes aplicaciones caracterizadas por tener un número
considerable de actuadores y subsistemas a supervisar.
El estado actual del trabajo realizado deja un balance positivo, los objetivos se han
alcanzado y se encuentra en un punto apropiado para futuras mejoras y adiciones, en si la
aplicación y el protocolo escogido son flexibles a cambios cuyo origen se podría encontrar en
la inclusión de nuevas variables a supervisar dentro de la bodega tales como el pH, niveles
de agua en tanques de reserva, contaminación del agua entre otras, además del control de
algunas de ellas.
Entre las mejoras se podría trabajar en la detección de fallas mecánicas del sistema de
aireación en los acuarios como la desconexión de la manguera, que transporta el aire, del
filtro que se encuentra en el fondo del acuario causando un proceso de oxigenación
deficiente del agua y por lo tanto para los peces. También se podría trabajar sobre la
supervisión del estado de la tubería de distribución del aire, a partir de la medición de presión
en diferentes partes de la red de tubería y así poder detectar fugas por causa de
desconexión de secciones de ella.
Como área mas próxima para futura investigación a partir de este proyecto, se encuentra el
desarrollo de herramientas que permitan llevar el sistema de supervisón a convertirse en un
aplicación de carácter remoto, es decir, tener la posibilidad de supervisar estas variables vía
comunicaciones celulares o través de la misma red de datos Internet, dando más utilidad y
versatilidad al sistema mismo.
73
BIBLIOGRAFÍA
AXELROD, H., BURGESS, W., EMMENS, C. “Dr. Axelrod´s mini atlas of freshwater acuarium
fishes”. Editorial T.F.H. Publications, Inc.
BAKER Bonnie C. Layout Tips for 12-Bit A/D Converter Application. Nota de aplicación
AN688. Microchip Technology Inc.
_______ Anti-Aliasing, Analog Filters for Data Acquisition Systems. Nota de aplicación.
AN699. Microchip Technology Inc.
________ Techniques that Reduce System Noise in ADC Circuits. Nota de aplicación.
AN699. Microchip Technology Inc.
BOSCH, Robert. CAN Specification Version 2.0 1991.
FAIRCHILD. Application Note AN-3003. Applications of Non Zero Crossing Triac Drivers.
Featuring the MOC3011.
GARBUTT, Mike. Asynchronous Communications with the PICmicro USART. AN774.
Microchip Technology Inc.
GRANET, Irving. Termodinámica. México: Prentice Hall Hispanoamérica, S.A..1988. 742
pag.
KREITH, Frank. Principios de transferencia de calor. México: Herrero Hermanos, sucesores,
S.A, 1970. 660 pag.
MICROCHIP TECHNOLOGY INC. High-Speed CAN Transceiver MPC2551
_________ PIC18FXX8. Data Sheet.
NATIONAL SEMICONDUCTOR. LM35. Precision Centigrade Temperature Sensors. 2000.
OGATA, Katasuhiko. Ingeniería de control moderna. México: Prentice Hall Latinoamerica.
1998. 997 pag.
74
POVEY, P. J. Usted y el acuario. Madrid: Paraninfo. 1982.
RAMIREZ, Hernando. “La pesca en la baja Orinoquía colombiana: una visión integral”.
Editorial Produmedios. Diciembre de 2001.
RICHARDS, Pat. A CAN Physical Layer Discussion. AN228. Microchip Technology Inc.
YOUNG, Vicent W. Basic Engineering Thermodynamics. New York: Mc Graw Hill Book
Company, INC. 1952. 545 pag.
75
ANEXO A
PROTOCOLO CAN
CARACTERÍSTICAS DEL PROTOCOLO CAN
La mayoría de las redes CAN se basan en la ISO 11898-2 para definir la capa física del
sistema, cuyas características básicas se encuentra en la tabla A.1.
Tabla A.1 Características protocolo CAN
CARACTERÍSTICA
Tasa máxima de transmisión
Distancia a la máxima tasa de transmisión
Distancia máxima de transmisión
Impedancia característica de la línea
Tiempo de retardo nominal de propagación
Tipo de codificación de bit
Arbitración del bus
VALOR
1 Mb/s
40 m
1 Km @ 50 kb/s
120 Ω
5 ns/m
NZR
Bit-wise
Al utilizar codificación de bit NRZ (no retorno a cero), la cual mantiene el nivel señal
constante en relación con el tiempo de bit, es necesario utilizar un mecanismo, como bit
stuffing, para evitar que se pierda la sincronización. Este mecanismo introduce un uno
después de ser transmitidos cinco ceros seguidos o un cero después de transmitir cinco
unos seguidos.
Los conflictos generados por la competencia de acceso al bus son resueltos por medio de la
utilización de arbitramiento tipo bit-wise, el cual se basa en la observación constante, por
parte de los nodos, del nivel de señal presente en el bus. Si uno o mas nodos empiezan una
transmisión al mismo tiempo, pierde la arbitración del bus aquel que trata de transmitir un
nivel recesivo y observa que algún otro transmite un nivel dominante. La lucha por el bus se
realiza únicamente durante la transmisión del identificador, por esto dos nodos no pueden
transmitir un mensaje con el mismo identificador. Una vez que el bus este libre, los nodos
que no hayan podido transmitir su mensaje, iniciaran una nueva competencia y de esta
76
forma, un nuevo proceso de arbitramiento se llevará acabo. Los niveles manejados en el
BUS se explican más adelante.
Un ejemplo de este proceso se puede observar en la figura A.1 en donde los nodos 1,2,3
empiezan a transmitir un mensaje al mismo tiempo. El nodo 1, es el primero que pasa a ser
receptor del mensaje al tratar de transmitir un bit recesivo mientras los otros dos transmitían
un bit domínate, lo mismo pasa con el nodo 3 un tiempo después, así que por último el que
logra transmitir el mensaje exitosamente es el nodo 2.
Figura A.1 Ejemplo de la arbitración de bus CAN
S
O
F
IDENTIFICADOR
NODO 1
PIERDE EL BUS
...
...
NODO 2
PIERDE EL
BUS
NODO 3
BUS CAN
...
...
TRAMA CAN
El protocolo CAN soporta dos tipos de mensajes, estándar o CAN 2.0 A y extendido o CAN
2.0 B., cuya diferencia es la longitud del identificador. Un mensaje estándar tiene una
longitud de identificador de 11 bits y un mensaje extendido tiene un identificador de longitud
de 29 bits. En general la trama CAN se conforma de (figura A.2):
Figura A.2 Trama CAN
S
O
F
IDENTIFICADOR
R
T
R
I
D
E
r0
DLC
DATOS
77
CRC
ACK
EOF
IFS
•
•
•
•
•
•
•
•
Inicio de trama (Start of Frame).
Campo de arbitración. Se divide en un identificador y una solicitud de trama remota
(Remote transmision Request),
Campo de control. Se divide en un identificador de mensaje extendido (IDentifier
Extension) y un identificador de número de datos transmitidos (Data Length Code).
Campo de datos. Su longitud puede variar entre cero y ocho bytes.
Campo de código de redundancia cíclica. Campo que garantiza la integridad del
sistema.
El campo de reconocimiento (ACK). El nodo que transmite la trama CAN envía un bit
recesivo y los que la reciben sobrescriben este campo con un bit dominante, lo cual
indica que el mensaje ha sido transmitido correctamente.
Final de trama (End of Frame)
Campo de intermisión. Indica el mínimo número de bits de separación entre dos
tramas CAN seguidas.
Control de errores.
El protocolo CAN utiliza cinco mecanismos para el control de errores:
•
Redundancia cíclica: El controlador CAN antes de transmitir un mensaje calcula el
CRC y lo adjunta a éste; el controlador receptor toma el mensaje quita el CRC
enviado y calcula uno nuevo y lo compara con el enviado, sino coinciden los valores,
se genera un error en la transmisión.
•
Revisión de trama: El controlador CAN revisa la estructura del mensaje y la compara
de acuerdo a la longitud de datos e identificador, con una estructura fija de los
menajes CAN.
•
Errores de reconocimiento: Una vez transmitida una trama CAN se espera recibir un
reconocimiento, si esto no sucede se genera un error de reconocimiento.
•
Monitoreo: En el proceso de transmisión de un mensaje, el controlador que envía
datos por el bus mantiene un monitoreo constante de los niveles de bit que están él,
de esta forma puede detectar diferencia entre lo que transmite y lo que se esta
recibiendo, errores de bit.
•
Bit stuffing
78
Si uno o mas errores son detectados en la transmisión de un mensaje por uno o más nodos
CAN, la transmisión es abortada y una trama de error es transmitida para que el mensaje no
sea recibido por ningún nodo, luego se intentara una retransmisión.
REQUERIMIENTOS DE TIEMPO DE BIT
El tiempo de bit nominal esta definido como el tiempo de transmisión de un bit y se conforma,
según la especificación CAN por cuatro segmentos como se ve en la figura A.3.
Figura A.3 Tiempo nominal de bit
TIEMPO NOMINAL DE BIT
SEGMENTO DE
SINCRONIZACION
SEGMENTO DE
PROPAGACION
SEGMENTO FASE 1
SEGMENTO FASE 2
PUNTO DE MUESTREO
•
Segmento de sincronización: Durante este segmento de tiempo se espera recibir un
borde de bit, que es usado para que los diferentes nodos de la red CAN se
sincronicen.
•
Segmento de propagación: Esta segmento del bit es usado para compensar el
retardo físico en el medio de transmisión, que puede presentar en la red.
•
Fase de segmento 1 y Fase de segmento 2: Este par de segmentos son usados para
compensar los errores de fase y para determinar el punto adecuado en cual se toma
el valor de Bit visto en el BUS. Son de longitud de tiempo variable, lo que permite
sincronización del sistema.
•
El punto de muestreo: Es el tiempo en el cual el nodo revisa el nivel del bus, lo lee y
lo interpreta.
79
OTROS ASPECTOS CAN
Topología de la red. La topología de una red CAN es tipo bus en el cual las señales
eléctricas se reflejan al final de este sin no hay un acople adecuado. Por tanto para que un
nodo lea correctamente las señales que viajan en el bus es necesario el uso de impedancias
terminación en cada extremo del bus o evitar derivaciones innecesarias del BUS demasiado
largas.
Niveles de bus. La especificación CAN define dos estados de bit, dominante y recesivo,
cuyos niveles lógicos se encuentran definidos por la ISO 11898. En estado recesivo el voltaje
diferencial entre las señales de CANH y CANL debe ser menor que 0.5 v en el la entrada del
receptor y menor que 1.5 v en la salida del transmisor. En estado dominante debe ser mayor
a los niveles de voltaje mencionados anteriormente (Ver figura A.4).
Figura A.4 Niveles presentes en el BUS CAN
Voltaje
Dominante
3.5
2.5
Voltaje
diferencial
Recesivo
Recesivo
1.5
Tiempo
CANH
CANL
Características del transceiver. La especificación CAN también requiere que los
transceivers utilizados cumplan con ciertas especificaciones eléctricas definidas por la ISO
11898 (ver tabla A.2).
80
Tabla A.2 Especificaciones CAN para los transceivers
VALOR
MAXIMO
-3
-150
2
10
2.75
0.5
PARAMETRO
Voltaje DC en CANH y CANL
Voltaje transigente en CANH y CANL
Voltaje Recesivo
Resistencia Interna diferencial
Voltaje dominante de salida (CANH)
Voltaje dominante de salida (CANL)
VALOR
MINIMO
32
100
3
100
4.5
2.25
UNIDADES
V
V
V
V
V
Tabla A.3. Especificaciones módulo CAN microcontroladores
MÓDULO CAN FAMILIA PIC18FXX8
ESPECIFICACIÓN
VALOR
Tasa de transmisión de mensajes
125.000
Longitud de identificador
11
Longitud de datos de mensaje
1a8
Buffers de recepción
3
Buffers de transmisión
2
Máscaras para recepción de mensajes
2
Filtros de aceptancia
6
81
UNIDAD
Kb/s
Bits
Bytes
-
ANEXO B
DIAGRAMAS DE FLUJO DEL SISTEMA
MÓDULO PRINCIPAL
MAIN
Configurar
puertos E/S
Configurar CAN
tasa de
transmisión
125.000 kb/s
Tiempo de espera
para configuración
CAN (200 µs)
Abrir el LCD
Las interrupción del
comparador e interrupción
externa (cruce por cero ) son de
alta prioridad y la de CAN es
de baja prioridad
Proceso de
configuración del
display a dos linea
Habilitar
interrupciones con
prioridades
Tiempo de espera
para estabilidad de las
adquisición de datos
del sistema (1 s)
Escritura
predeterminada en
el display
Caso es la variable que controla que
dato debe ser pedido por el módulo
principal
Caso=1
1
82
1
Caso para solicitar el número
de módulos de aireación
activos en el sistema
Si
Tx mensaje CAN
solicitando número de
módulos de aireación
Caso==1
Caso=0
No
a es una variable que indica
de que caso se esta
esperando respuesta a través
de un mensaje CAN
a=1
Abrir Timer0
(tiempo de 30ms)
Caso para establecer por
primera vez el estado de la
luz en modo controlado
(estado por defecto ) y
solicitar el valor de la
temperatura del módulo 1
Si
*
Si
Se acaba
de iniciar el
sistema
Caso==2
No
No
Pasa la luz a modo
controlado
Tx mensaje CAN
solicitando la temperatura
al módulo 1
Caso=0
a=2
Abrir Timer0
(tiempo de 30ms)
Caso para solicitar el valor de
la temperatura del módulo 2
Caso==3
Si
*
Tx mensaje CAN
solicitando la temperatura
al módulo 2
No
Caso=0
2
a=3
Abrir Timer0
(tiempo de 30ms)
83
*
2
Si
Caso para solicitar el valor de
la temperatura del módulo 3
Tx mensaje CAN
solicitando la temperatura
al módulo 3
Caso==4
Caso=0
No
a=4
Abrir Timer0
(tiempo de 30ms)
Caso para solicitar el valor de
la temperatura del módulo 4
Si
*
Tx mensaje CAN
solicitando la temperatura
al módulo 4
Caso==5
No
Caso=0
a=4
Abrir Timer0
(tiempo de 30ms)
Caso para solicitar el valor el
estado de aireación del
módulo 1 que supervisa 16
acuarios
*
Si
Caso==6
a=6
No
Si
No
Existe algún módulo
supervisando aireación
con ID entre 1 y 8
No
El módulo
1 esta
supervisando
Caso=14
Caso=7
*
Si
*
Tx mensaje CAN
solicitando el estado de la
aireación del módulo 1
Caso=0
3
No es una variable que indica
el número del módulo de
aireación del que se espera
recibir respuesta a través de
un mensaje CAN
Abrir Timer0
(tiempo de 30ms)
No=1
84
*
Si
3
Caso==6
Si
No
El módulo 2
esta
supervisando
No
Tx mensaje CAN
solicitando el estado de la
aireación del módulo 2
Caso=7
Caso=0
...
No=2
Abrir Timer0
(tiempo de 30ms)
*
Si
Caso==31
Existe algún módulo
supervisando aireación
con ID entre 25 y 36
Si
No
Caso=31
El módulo
25 esta
supervisando
Caso=38
*
Si
*
Tx mensaje CAN
solicitando el estado de la
aireación del módulo 25
Caso=0
No=25
Abrir Timer0
(tiempo de 30ms)
4
No
*
85
4
...
Si
Último caso de
solicitud del
estado de la
aireación
Caso==37
No
Si
Tx mensaje CAN
solicitando el estado de la
aireación del módulo 32
Caso=0
El módulo
32 esta
supervisando
Caso=38
No=32
Abrir Timer0
(tiempo de 30ms)
Caso de reporte
de alarmas
sonoras y
solicitud de
fallas para
reportarlas en el
display
*
Si
Caso==38
No
No se han
pedido
retransmisiones de
este caso
No
Rutina de reporte de
fallas a través del display
*
1
86
Si
Rutina de alarma sonora
1
2
No
El estado de error
actual es de falla
Desactivación
alarma sonora
Si
Contador2 ++
Activación
alarma sonora
El estado anterior
del sistema guarda
el estado actual del
sistema
El estado actual del
sistema toma el
estado de no falla
Contador2 >=1
No
Contador2 ==20
No
Si
Contador2 ++
Si
Desactivación
alarma sonora
Contador2 =0
Retorno de
rutina
87
Rutina de reporte de
fallas a través del display
No
Si
Conespera == 0
Conespera es un
contador que hace posible
que los datos mostrados
en el display se
mantengan un tiempo
adecuado para que el
usuario del sistema pueda
distinguir las diferentes
fallas
Conespera == 20
No
Si
Tx mensaje CAN
solicitando las fallas del
sistema
Caso=0
Conespera=0
Conespera++
a=38
Abrir Timer0
(tiempo de 30ms)
Caso=2
Retorno rutina del
display
88
RUTINA DE INTERRUPCIÓN DE
ALTA PRIORIDAD
(COMPARADOR O INT1)
Si
Interrupción del
comparador?
No
Baja las señales de los MOCs
3010 de acuerdo a las luces que
desean ser prendidas o apagadas
Cierra el Timer1
Activa las señales de los MOCs
3010 de acuerdo a las luces que
desean ser prendidas o apagadas
Baja la bandera de
interrupción del externa Int1
Baja la bandera de
interrupción del comparador
i es una variable que lleva el
registro de los pasos de
encendido o apagado de la luz ,
tiene un valor máximo de 1000 .
Valor del compardor= Valor de
comparador + aux
i++
No
Abre el Timer1
i==1000
Si
Deja a los MOCs 3010 en estado
de encendido o apagado
Cierra el Timer1
i=0
Tx de mensaje CAN confirmado en
estado de la luz
Retorno de rutina de
interrupción
89
RUTINA DE INTERRUPCIÓN DE
BAJA PRIORIDAD
(Rx CAN O TIMER0)
Si
Respuesta de
número de módulos
de aireación
Actualización
de número de
módulos de
aireación
No
A
Descarga 4 palabras que
indican que módulos estan
supervisando
caso1=1
1
caso 1 es una variable que
indica de que caso se esta
recibiendo con relación al main
del sistema
No
Este caso se presenta cuando
se ha configurado un nuevo
módulo de aireación
Rx CAN
Descarga 4 palabras que
indican que módulos estan
supervisando
1
Descarga 4 palabras que
indican que módulos estan
supervisando
1
No
Este caso se presenta cuando
se ha cambiado el ID de un
módulo o se ha quitado uno
Actualización
de número de
módulos de
aireación1
No
Orden de prender
la luz
Descarga de las
áreas de luz que
desean ser
prendidas
No
Cambio de
modo de
iluminación a
controlado
No
2
Si
Activa la señal de
control de los relés
Cambio del estado de iluminación a
un modo conocido (apagado)
Tx de mensaje CAN confirmado el
cambio del modo de iluminación
3
1
90
3
2
Cambio de
modo de
iluminación a
manual
Si Desactiva la señal de
control de los relés
Desactiva las señales
de los TRIACS
Tx de mensaje CAN confirmado
el cambio del modo de
iluminación
No
Inicia el comparador a
un valor de 0x206C
1
aux es una variable que
indica el tamaño de los
pasos de encendido de
la luz
aux=-8
b es una variable que
indica si quiere prender la
luz (b=1) o apagar (b=0)
b=1
Habilita la interrupción
Int1 con borde de
subida
Habilita la interrupción
del comparador
Orden de
apagar
la luz
Si
1
Descarga de las
áreas de luz que
desean ser
apagadas
Inicia el comparador a
un valor de 0x0000
aux=0
No
b=0
Habilita la interrupción
Int1 con borde de
subida
Habilita la interrupción
del comparador
4
1
91
4
Si
Reporte
temperatura
módulo 1
Descarga el valor de
la temperatura
medido por el
módulo
caso1=2
1
No
Reporte
temperatura
módulo 2
Si
Descarga el valor de
la temperatura
medido por el
módulo
caso1=3
1
No
Reporte
temperatura
módulo 3
Si
Descarga el valor de
la temperatura
medido por el
módulo
caso1=4
1
Descarga el valor de
la temperatura
medido por el
módulo
caso1=5
1
Guarda el ID del módulo
que esta reportando su
estado y el estado de los
acuarios que el
supervisa
caso1=6
1
Descarga del tipo de falla
y del número de módulo
o acuario que la presenta
caso1=38
1
No
Reporte
temperatura
módulo 4
Si
No
Reporte módulo
de aireación
Si
No
Reporte falla
al LCD
Si
No
1
92
A
Baja la bandera de
interrupción del Timer0
Cierra el Timer0
Indica el número
del caso de cual se
estaba esperando
respuesta
Indica el número del
caso del cual se
obtuvo respuesta
Si
a==1
Caso1==1
Si es verdadero es
porque ya se han pedido
tres retransmisiones , se
reporta error
No
Si
No
No
Contador==3
Si
Contador=0
Caso=2
Contador++
Contador=0
Caso=1
Contador es una
variable que lleva la
cuenta del número
de retransmisiones
que se han solicitado
del mismo caso, su
máximo valor es 3
Caso=0
LCD muestra que no
hay comunicación
con el PC
1
a==2
Si
Si
Caso=3
Div++
Contador++
Caso=2
...
Contador==3
Si
Contador=0
Caso=3
Tx mensaje CAN
reportando error en el
módulo de temperatura 1
1
a==5
Si
Caso1==5
No
No
No
Si
Proceso llego lo
que se esperaba
Proceso de
retransmisión
5
6
93
Contador==3
Si
Proceso de reporte
de daño en el
módulo
PROCESO DE REPORTE DE
DAÑO EN EL MÓDULO
Contador=0
No
PROCESO DE
RETRANSMISIÓN
Div variable que lleva
el registro del número
de módulos de
temperatura que han
reportado su
temperatura en cada
ciclo
No
PROCESO LLEGO LO QUE SE
ESPERABA
No
Caso1==2
5
6
No
Si
Caso==6
Este caso se presenta
cuando se tiene el
valor de las cuatro
temperaturas de los
módulos
Contador=0
Tx mensaje CAN reportado el
valor de las cuatro
temperaturas reportadas por
los módulos
1
No
Div==0
Cálculo del promedio de la
temperatura de acuerdo al
número de módulos de
temperatura que no han
reportado falla
Si
Búfer de transmisión CAN<-0
Tx mensaje CAN reportando el valor
de la temperatura promedio y los
módulos OK
º
Limpiar variables proceso
temperatura
1
a==6
Caso1==6 &
No == ID módulo
No
Si
Ultimo módulo
de aireación
No
Caso=No+6
Si
Caso=38
Contador =0
Alguno de los
acuarios presenta
falla de aireación
Tx CAN reportando el
ID del modulo y el
estado de los acuarios
que él supervisa
Si
No
7
8
94
7
8
Si
No
Contador==3
Levanta la variable
que controla la
alarma sonora
Contador++
Caso=No+5
Ultimo módulo
No
Caso=No+6
Si
Caso=38
º
Tx CAN reportando
error del modulo que
fallo
1
Si
a==38
Caso1==38
Si
caso=2
Contador=0
No
Si
Contador==3
Si
caso=2
Contador=0
Contador++
Caso=38
Reporte de no hay
comunicación con es
sistema supervisor
No
Reporte del sistema
OK
Se
reporta que se
ha cerrado el
programa
del PC
No
Hay alguna
falla en el
sistema
Si
Reporte de falla de acuerdo al
tipo y al número de módulo o
acuario que ha fallado
1
Retorno de interrupción
de baja prioridad
95
MÓDULO DE TEMPERATURA
MAIN
Configuración
de los puertos
E/S
Configuración
CAN
Tiempo de espera
para configuración
CAN (200 µs)
Habilitar
interrupción
CAN
Interrupción de
CAN
No
Si
Rutina de
Interrupción
CAN
96
Rutina de
Interrupción
CAN
No
Mensaje de
solicitud de
temperatura
Si
Rutina de conversión
ADC
No
El ADC ha
tomado 10
muestras
Si
Hallar promedio de las
10 muestras tomadas No
Transmisión mensaje
CAN reportando valor
de la temperatura
medida
Rutina para manejar el
display para la
visualización de la
temperatura en el
módulo
Retorno de
interrupción
97
Rutina de conversión
ADC
Abrir ADC
Tiempo de
espera
(20µs)
Iniciar la
conversión
Se ha
terminado la
conversión
Si
Retorno de rutina
98
No
MÓDULO DE AIREACIÓN
MAIN
Configuración de
los puertos I/O
Configuración
CAN
Tiempo de espera
para configuración
CAN (200 µs)
Habilita
interrupciones
CAN y Timer0
Dir. 0x10 donde se
encuentra el número de
módulo que le ha sido
asignado. Si el dato de la dir.
Es 0xFF el módulo no ha
sido configurado.
Lee EEPROM
dirección 0x10 y
carga el dato en la
variable DATA
Si
El módulo ha sido
configurado
No
Carga variable
que indica que el
módulo no ha sido
configurado
Transmita
mensaje CAN
pidiendo
configuración
0x041 es el ID del mensaje
CAN de configuración de los
módulo de aireación
Inicia el Timer0
para un tiempo de
respuesta de
8.16ms
Ha llegado un mensaje CAN
o el Timer0 ha interrumpido
Si
Rutina de atención
de interrupción
99
No
Rutina de atención
de interrupción
Si
Si
Escribe en la
EEPROM el número
de módulo que le ha
sido asigando
Interrupción
CAN
No
Mensaje de
configuración
Cerrar el Timer0
No
No
Llegó mensaje de
configuración del
módulo
Si
Escribe en la EEPROM el
nuevo número de módulo
asignado o en caso de
desconfiguración escribe
0xFF
Si
Lee la dirección
donde se encuentra
el número de
módulo asignado
Mensaje de
desconfiguración o
cambio de ID
Si
Transmite
mensaje CAN
pidiendo
configuración
No
Inicia el Timer0
Mensaje de
confirmación de
configuración
No
Transmite un
mensaje CAN con el
dato que leyó
0x042 corresponde al
ID del mensaje CAN
de confirmación
Si
Toma el estado actual
de los puertos que
realizan la supervisión
Transmite un mensaje
CAN reportando el
estado de la aireación
de los acuarios
Mensaje de petición del
estado de los acuarios bajo
supervisión por el módulo
No
0x400 corresponde al ID del
mensaje CAN de reporte de
estado de la aireación de los
acuarios
Retorno
100
MÓDULO DE COMUNICACIONES
MAIN
Configurar
puertos E/S
Configurar
USART con tasa
de transmisión
115.200 b/s
Configurar CAN
con tasa de
transmisión
125.000 b/s
Tiempo de espera
para configuración
CAN (200 µ)
Habilitar
interrupciones con
prioridades
La interrupción de la USART
es de alta prioridad y la de
CAN es de baja prioridad
Contador=0
Contador es la variable que indica
cuantas veces se ha preguntado si
el sistema supervisorio instalado en
el computador se encuentra abierto
1
Ha interrumpido un
mensaje CAN o de la
USART
No
2
101
Si
Rutina de interrupción
de alta (USART) o de
baja (CAN) prioridad
2
Se han preguntado 20
veces si el sistema
supervisor esta
No
Transmisión mensaje
CAN solicitando el
estado del sistema
supervisor
Tiempo de
espera
No
El sistema
supervisorio esta
Contador ++
Si
Contador = 20
1
Activar la transmisión
de datos al PC
1
102
Si
1
Rutina de interrupción
de alta prioridad
(USART)
Guardar el dato en el
buffer de recepción
Si
Han llegado
9 Bytes
No
1
Cálculo del
Checksum de los
datos de llegada
Tx mensaje CAN ID
0x201 y el área de luz
que desea ser
iluminada
Si
Checksum calculado Si
= Checksum recibido
Pide retransmisión de
la trama al
computador
No
1
Solicitud de
prender la luz
1
No
Solicitud de
apagar la luz
No
Tx mensaje CAN:
ID 0x031 y el dato
de configuración
Si
Configuración
de módulo de
aireación
1
No
2
103
Si
Tx mensaje CAN: ID
0x202 y el área de luz
que desea ser
apagada
1
2
Tx mensaje CAN ID
0x032, nuevo ID
asignado al modulo
Si
1
Cambiar el ID o
quitar un módulo de
aireación
No
Petición de
confirmación de
configuración de módulo
de aireación
Tx mensaje CAN
ID 0x033
Si
1
No
Tx mensaje CAN
ID 0x204, el
número de módulo
o acuario que
presento la falla y
el tipo de falla que
se reporto
Si
Reporte de
alarmas al
display
No
1
Confirmación
aplicación supervisor
del computador
abierta
Si
No
Desactivar la
transmisión de datos
al computador
Si
1
Reporte
aplicación supervisor
del computador se ha
cerrado
No
Retorno
104
Activar transmisión
de datos al
computador
1
Rutina de interrupción
de baja prioridad
(CAN)
Solicitud número de
módulos de aireación
activos en el sistema
Si
No
Carga al búfer de
transmisión de
USART ID 0x02 y
número de módulo
que ha fallado
Si
Carga al búfer de
transmisión de
mensaje USART ID
0x01
1
Reporte alarma
módulo de
aireación
No
1
Solicitud
configuración módulo
de aireación
Si
Carga al búfer de
transmisión de
USART ID 0x03
No
Carga al búfer de
transmisión de USART
ID 0x20 y el ID del
módulo al que se le ha
solicitado la
confirmación
1
Si
Respuesta a
confirmación de
configuración módulo
de aireación
No
1
Reporte falla en
módulo de
aireación
Si
Carga al búfer de
transmisión de
USART ID 0x04 y el
ID del módulo que ha
fallado
1
2
105
2
Reporte falla
módulo de
temperatura
Si
Carga al búfer de
transmisión de
mensaje USART ID
0x05 y ID del módulo
que falló
No
1
Carga al búfer de
transmisión de
mensaje USART, ID
0x06 y temperatura
de cada módulo
Si
Reporte temperatura
de los cuatro módulos
No
1
Reporte promedio
de temperatura de los
cuatro módulos
Si
Carga al búfer de
transmisión de mensaje
USART, ID 0x07,
temperatura promedio y
número de módulos de
aireación reportando
temperatura
No
1
Carga al búfer de
transmisión de
mensaje USART, ID
0x09
1
Si
Solicitud de fallas
en el sistema
para mostrar en el
display
No
Reporte del estado
de la iluminación
de la bodega
1
Si
Carga al búfer de
transmisión de mensaje
USART, ID 0x0A, modo de
iluminación y areas
iluminadas
No
Esta activa la
transmisión de datos
al computador
RETURN
106
Si
Transmisión del
búfer de USART
APLICACIÓN DE SOFTWARE
RUTINA RECEPCIÓN
MENSAJE COM
El id indica el tipo de mensaje
que ha llegado por el COM
Descarga identificador (id)
Descarga datos
Petición
número de
módulos de
aireación
Rutina de adquisición de
número de módulos
Transmisión mensaje CAN
*
Reporte visual falla
módulo temperatura
Reporte falla
de módulo de
temperatura
*
Reporte
temperatura
zonas
Interpretación del valor de
la temperatura
Reporte visual
temperatura
Reporte al display
y reporte visual
Temperatura
fuera del rango
*
Reporte
temperatura
promdeio
4
107
Número
de módulos
reportando
temperatura
=4
Reporte visual
falta un módulo
de temperatura
Número
de módulos
reportando
temperatura
=0
Reporte visual
de temperatura
= 0 °C
1
1
4
Cálculo y visualización
promedio de
temperatura
Almacenamiento
base de datos de
emergencia
Reporte
emergencia
temperatura
Temperatura
promedio dentro del
rango normal
*
Falla en número
de módulos de
temperatura
Almacenamiento
base de datos de
emergencia
*
Almacenamiento
base de datos de
emergencia
Falla en número de
módulos de aireación
*
Falla de
aireación en
acuario
Almacenamiento
base de datos de
emergencia
*
Existe falla
en módulos de
temperatura
Solicitud fallas
en el sistema
Reporte falla
número de
módulo
*
Existe falla
en módulos de
aireación
Reporte falla
número de
módulo
*
Existe falla
de aireación en
acuario
Reporte falla
número de
acuario
*
Reporte valor
promedio de la
temperatura
5
Existe alarma
de temperatura
promedio
*
2
108
5
2
Existe alarma
de temperatura en
alguna zona
Solicitud de
retransmisión
Retrasnmsión
último mensaje
Confirmación
estado de la luz
Almacenamiento
variable del estado
de iluminación
Reporte
alarma de
aireación
Solicitud
configuración
módulo de
aireación
Reporte
alarma módulo
de aireación
Reporte visual
alarma
aireación
Rutina de
configuración de
módulo de aireación
Reporte visual
alarma de módulo
de aireación
Solicitud de
confirmación
aplicación
abierta
Transmisión
mensaje CAN
confirmando la
aplicación esta
abierta
Confirmación
de configuración
módulo de
aireación
Mensaje visual de
configuración
existosa
*
FIN
109
Reporte zona en
alarma y valor de la
temperatura
ANEXO C
ESQUEMÁTICOS DEL SISTEMA
MÓDULO PRINCIPAL
Fuente de alimentación y detector de cruce por cero de la fase
F1
D7
J7
1
2
1
FUSE
srec
+ 4
2 -
D8
vf
D1N4004
C1
CON2
BRIDGE
1500u
3
0
VCCA
VCCA
J15
srec
1
2
3
4
R27
10k
R25
10k
R26
3.3k
Q19
cxo
cxo
vf
CON4
Q2N2222
0
CON10
0
1
2
3
4
5
6
7
8
9
10
J16
110
b1
b2
b3
b4
b5
b6
ma1
ma2
0
Bloque de iluminación
VCCA
VCCA
VCCA
R1
R2
trisw1
R4
R5
180
220
U1
U2
6
1
2
R8
4
4
VCCA
fase
3
5
2
6
1
4
Q7
1
2
3
Q2N2222
trisw1
SW1
fase
R11
D1N4148
ma1
trisw2
SW2
R12
CON2
10k
Q2N2222
0
0
0
VCCA
VCCA
R13
R14
6
2
U5
2
TRIAC A1A2G
MOC3010
R20
4
10k
VCCA
fase
10k
4
SW4
VCCA
fase
10k
0
Q2N2222
K6
0
SW5
VCCA
fase
6
1
D1N4148
trisw4
SW4
R23
Q17
RELAY SPDT
10k
D6
D1N4148
J5
1
2
ma2
SW6
3
RELAY SPDT
J4
4
5
2
D5
CON2
Q2N2222
4
3
RELAY SPDT
D4
ma2
4
K5
6
1
Q12
Q15
5
2
1
2
U6
TRIAC A1A2G
b6
Q2N2222
5
2
R22 Q16
2
R21
0
3
D1N4148
TRIAC A1A2G
6
MOC3010
4
K4
6
1
1
Q14
b5
Q2N2222
0
Q11
MOC3010
Q13
b4
180
220
6
1
trisw6
R18
180
220
Q10
U4
R15
trisw5
R17
180
220
trisw3
SW3
1
2
ma1
CON2
Q2N2222
J3
Q9
VCCA
1
3
RELAY SPDT
J2
1
2
trisw4
SW3
D3
Q8
10k
4
5
2
D1N4148
CON3
R16
6
1
RELAY SPDT
J1
ma1
10k
VCCA
fase
D2
D1N4148
R19
K3
0
SW2
3
RELAY SPDT
10k
Q2N2222
5
2
D1
R10
4
10k
K2
0
SW1
Q6
b3
Q2N2222
K1
VCCA
fase
R9
4
10k
6
1
MOC3010
Q5
b2
Q2N2222
Q3
TRIAC A1A2G
MOC3010
Q4
0
U3
2
MOC3010
10k
6
1
TRIAC A1A2G
2
b1
180
220
Q2
TRIAC A1A2G
R7
trisw3
R6
180
220
Q1
6
1
R3
trisw2
CON2
Q2N2222
0
trisw5
SW5
R24
Q18
1
2
ma2
10k
CON2
Q2N2222
0
111
J6
trisw6
SW6
Bloque microcontrolado
LM7805C/TO220
U7
v+
1
IN OUT
0.47u
C6
VCC
3
J14
D
N
G
C7
10u
C8
100n
2
U8
b1
b2
b3
b4
1
2
3
4
Y1
OS2
2
3
4
5
6
7
33
34
cxo
35
TX 36
RX
37
38
39
40
15
b1 16
b2 17
b3 18
b4 23
b5 24
b6 25
ma1 26
ma2
dbus6 19
dbus7 20
dbus8 21
dbus9 22
dbus10 27
dbus11 28
dbus12 29
dbus13 30
dbus4 8
dbus3 9
dbus5 10
alson
canok
s1
s2
s4
s3
OS1
CON4
VCC
J13
J8 vf
1
2
3
dbus0
R38
dbus1
1k VCC dbus2
J9
1
2
v+
15p
15p
CON4
R39
CON2
CON3 vb
1k
VCC
J12
1
2
3
4
b5
b6
ma1
ma2
1
2
3
4
vb
C4 Cristal C5
cxo
J11
vf
CON4
VCC
2
LS1
D13
BUZZER
D1N4148
1
2
3
4
5
6
7
8
9
10
11
12
13
14
VCC C11
dbus0
dbus1
dbus2
dbus3
dbus4
dbus5
dbus6
dbus7
dbus8
dbus9
dbus10
dbus11
dbus12
dbus13
33k
R30
0.1u
U9 3
8
1
7 RS D TXD 4
6 CANH D RXD
V
5 CANL
VREF
D
N
G
J10
1
2
CON2
TX
RX
MCP2551
2
CON14
dbus[13..0]
VCC
1
2
PIC18F458
SW1
R34
s4
1
Q21
1k
R33
s3
1k
R37
12
31
R41
40
alson
RA0/AN0
RA1/AN1
RA2/AN2
RA3/AN3/REF
RA4/T0CLK
RA5/AN4/SS
RB0/INT MCLR/VPP
OSC1/CLK
RB1
RB2 OSC2/CLKOUT
RB3
RB4
VDD
RB5
RB6
VDD
RB7
RC0/T1OSO/T1CLK
RC1/T1OSI/CCP2
RC2/CCP1
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7
RE0/RD/AN5
RE1/WR/AN6
RE2/CS/AN7 D D
NN
GG
1k
D14
LED
R32
s2
1k
D12
LED
Q2N2222
112
R31
s1
1k
D11
LED
canok
1k
D10
LED
1k
D9
LED
VCC
3k
R29
SW2
1 1
2
13
OS1
14
OS2
11
32
C13
10u
VCC
C12
1n
MÓDULO DE TEMPERATURA
U5
VCCA
1
LM7805C/TO220
U3
v+
VS+ GND
3
1
0.47u
C6
T
U
O
V
VCC
VCC
D
N
G
C7
10u
R11
100n
C4 Cristal C5
2
R12
C1 100n
R1
R2
2k
200
5
R3
+
R4
2k
0
VCCA
U1B
8
200
D
D
V OUT 7
U1A
R7
3
8
0
27k
200k
470n
C2 2
0
4 R5
0
U2
1n
D
D
V OUT 1
6
- SS
V
MCP6022
0
C9
+
canok
- SS MCP6022
V
0
0
4
18k
DIS4
DIS6
R6
2k
J3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CON16
DIS0
DIS1
DIS2
DIS3
DIS4
DIS5
DIS6
DIS7
DIS8
DIS9
DIS10
DIS11
DIS12
DIS13
DIS14
DIS15
TX
RXDIS8
VCC C11
33k
R10
0
DIS10
DIS12
DIS14
DIS5
DIS7
DIS9
DIS11
DIS3
DIS1
DIS0
DIS2
0.1u
U4 3
v+
8
1
7 RS D TXD 4
CANH
RXD
D
6
V
5 CANL
VREF
D
N
G
J2
J1
1
2
1
2
CON2
CON2
TX
RX
MCP2551
2
DIS15
DIS13
2
3
4
5
6
7
21
22
23
24
25
26
27
28
11
12
13
14
15
16
17
18
RA0/AN0/CVREF
RA1/AN1
RA2/AN2/VREFRA3/AN3/VREF+
RA4/T0CLK
RA5/AN4/SS/LVDIN
RB0/INT0
RB1/INT1
RB2/CANTX/INT2
RB3/CANRX
MCLR/VPP
RB4
RB5/PGM OSC1/CLKI
RB6/PGC OSC2/CLKO
RB7/PGD
RC0/T1OSO/T1CLK
RC1/T1OSI
VDD
RC2/CCP1
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
DD
NN
GG
PIC18F248
R14
470
R15
470
9
18
R13
canok
1k
DIS[15..0]
D1
LED
113
15p
0
VCCA C10 10u
R8
15p
0
C3
0.1u
OS1
VCCA
0
C8
2
LM35/TO
Y1
OS2
3
IN OUT
VCC
3k
R9
1
9
10
OS1
OS2
20
VCC
C13
10u
C12
1n
MÓDULO DE AIREACIÓN
Bloque microcontrolado
LM7805C/TO220
U3
v+
1
IN
0.47u
C6
OUT
VCC
VCC
VCCA
3
Y1
OS2
OS1
R86
D
N
G
C7
0
R87
C8
10u
1n
C4
0
2
C5
Cristal
15p
15p
0
v+
U2
J17
1
2
s9
s10
sconf ig
conf ig
CON2
VCC C3
33k
R85
J18
1
2
8
7
6
5
CON2
2
3
4
5
6
7
21
22
23
24
25
26
27
28
11
12
13
14
15
16
17
18
0.1u
U4 3
RS
TXD
CANH D
D RXD
CANL V
VREF D
N
G
1
4
TX
RX
MCP2551
canok
s11
s12
TX
RX
s13
s14
s15
s16
s1
s2
s3
s4
s5
s6
s7
s8
2
RA0/AN0/CVREF
RA1/AN1
RA2/AN2/VREFRA3/AN3/VREF+
RA4/T0CLK
RA5/AN4/SS/LVDIN
RB0/INT0
RB1/INT1
RB2/CANTX/INT2
RB3/CANRX
RB4
MCLR/VPP
OSC1/CLKI
RB5/PGM
OSC2/CLKO
RB6/PGC
RB7/PGD
RC0/T1OSO/T1CLK
RC1/T1OSI
VDD
RC2/CCP1
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
DD
NN
GG
PIC18F248
R81
R82
conf ig
sconf ig
1k
D3
LED
9
1 8
R83
canok
1k
1k
D2
LED
D1
LED
114
VCC
R84
1
9
10
20
C1
10u
3k
OS1
OS2
VCC
C2
1n
Detectores de presencia de aire en los acuarios (16 detectores).
VCCA
VCCA
10k
R4
VCCA
R1
R3
100k
VCCA
Q2
VCCA
s1
10k
10k
R9
VCCA
R6
R8
100k
Q4
J1
R11
s2
R13
0
R7
0
Q2N2222
21
R12
R15
0
J3
0
Q2N2222
21
1k
1.5M
0
CON2
Q2N2222
R10
0
J2
1.5M
s3
Q5
Q2N2222
R5
1k
Q6
10k
Q3
Q2N2222
10k
R14
VCCA
100k
Q2N2222
R2
VCCA
10k
Q1
21
VCCA
1k
1.5M
0
0
CON2
0
CON2
VCCA
VCCA
VCCA
VCCA
VCCA
R21
R16
R18
100k
10k
R24
VCCA
10k
R19
VCCA
Q8
s4
R23
100k
Q10
VCCA
s5
10k
10k
10k
R29
VCCA
R26
R28
100k
Q12
s6
10k
Q9
Q11
Q7
Q2N2222
Q2N2222
Q2N2222
R22
R17
21
J4
Q2N2222
R20
0
1.5M
0
R25
0
J5
1k
Q2N2222
21
Q2N2222
1k
1.5M
0
0
CON2
R30
0
J6
1.5M
0
0
R27
21
1k
0
CON2
CON2
VCCA
VCCA
VCCA
VCCA
VCCA
VCCA
R33
100k
Q14
s7
VCCA
10k
R44
Q18
R36
R31
VCCA
10k
R39
10k
R34
VCCA
R38
100k
Q16
s8
R41
10k
10k
R43
100k
s9
10k
Q15
Q17
Q2N2222
Q13
Q2N2222
Q2N2222
R37
R32
21
J7
Q2N2222
R35
0
1.5M
Q2N2222
R42
21
1k
J9
1.5M
0
0
R40
0
J8
1k
0
21
0
Q2N2222
R45
0
1k
1.5M
0
CON2
0
CON2
CON2
VCCA
VCCA
VCCA
VCCA
VCCA
VCCA
R51
R46
R48
100k
Q20
s10
R53
100k
Q22
s11
10k
10k
Q19
10k
R54
10k
R49
VCCA
VCCA
VCCA
R56
10k
R59
R58
100k
Q24
s12
10k
Q21
Q23
Q2N2222
Q2N2222
Q2N2222
R52
R47
21
J10
Q2N2222
0
1.5M
0
0
R50
21
1k
J11
Q2N2222
R55
0
1k
1.5M
0
R57
21
J12
0
CON2
CON2
115
R60
0
1.5M
0
CON2
Q2N2222
1k
0
MÓDULO DE COMUNICACIONES
VCC
J3
v+
C15
RSN
RSV
1
2
3
LM7805C/TO220
U3
1
0.1u
U5
CON3
TXU
RSV
6
1
11
10 T1IN C
T2IN C
V
13
R1IN
8
R2IN
C11
0.1u
1
3 C1+
C1-
C12
0.1u
4
5 C2+
C2-
C14
0.1u
2
6 V+ D
V- N
G
VCC
14
T1OUT 7
T2OUT
RSN
12
R1OUT 9
R2OUT
RXU
IN OUT
D
N
G
C7
C8
10u
1n
15p
33k
R2
J2
1
2
HIN232
1
2
CON2
CON2
canok
s1
s2
0.1u
U4 3
8
1
7 RS D TXD 4
6 CANH DV RXD
5 CANL
VREF D
N
G
TX
RX
TX
RX
RB6P
RB7P
MCP2551
2
J4 CON6
654321
R4
R5
s2
RB7P
RB6P
CON6A
VCCmic
VCC
2
4
6
J5
1
3
5
15p
U2
J1 v+
D3
LED
TXU
RXU
R3
s1
1k
OS1
C4 Cristal C5
2
VCC C3
5
1
C13
1n
0.47u
C6
OS2 Y1
VCC
3
canok
1k
D2
1k
LED
D1
LED
MCLR
VCC
3k R1
116
2
3
4
5
6
7
21
22
23
24
25
26
27
28
11
12
13
14
15
16
17
18
RA0/AN0/CVREF
RA1/AN1
RA2/AN2/VREFRA3/AN3/VREF+
RA4/T0CLK
RA5/AN4/SS/LVDIN
RB0/INT0
RB1/INT1
RB2/CANTX/INT2
RB3/CANRX
RB4
MCLR/VPP
RB5/PGM OSC1/CLKI
RB6/PGC OSC2/CLKO
RB7/PGD
RC0/T1OSO/T1CLK
RC1/T1OSI
RC2/CCP1
VDD
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
DD
NN
GG
PIC18F258
9
18
1
9
10
MCLR
OS1
OS2
20
VCCmic
C1
10u
C2
1n
ANEXO D
TABLAS DE RESULTADOS DE
MEDICIONES DE TEMPERATURA
Tabla D.1 Medidas de temperatura realizadas en la bodega JB Peces tropicales
Hora
Fecha
Promedio
Zona 1
Zona 2
Zona 3
Zona 4
21/10/2004
12:15:11 a.m.
26,9
26,33
28,35
26,26
26,72
21/10/2004
12:30:11 a.m.
27
26,52
28,48
26,39
26,85
21/10/2004
12:45:11 a.m.
27,1
26,59
28,48
26,39
26,98
21/10/2004
01:00:11 a.m.
27,2
26,65
28,48
26,59
26,98
21/10/2004
01:15:11 a.m.
27,2
26,65
28,54
26,65
27,17
21/10/2004
01:30:11 a.m.
27,2
26,65
28,54
26,65
27,17
21/10/2004
01:45:11 a.m.
27,2
26,72
28,54
26,59
27,24
21/10/2004
02:00:11 a.m.
27,2
26,72
28,54
26,65
27,17
21/10/2004
02:15:11 a.m.
26,7
26,72
26,33
26,65
27,24
21/10/2004
02:30:11 a.m.
26,7
26,72
26,13
26,65
27,24
21/10/2004
02:45:11 a.m.
26,8
26,72
26,07
26,52
28,22
21/10/2004
03:00:11 a.m.
26,7
26,72
26,20
26,65
27,24
21/10/2004
03:15:11 a.m.
26,7
26,72
26,20
26,52
27,24
21/10/2004
03:30:11 a.m.
26,9
27,57
26,20
26,65
27,24
21/10/2004
03:45:11 a.m.
26,8
27,76
26,20
26,52
26,98
21/10/2004
04:00:11 a.m.
27,
28,61
26,07
26,52
26,98
117
Tabla D.2 Comparación entre el sistema y el termómetro Fluke 51 II, realizadas en la
bodega JB Peces tropicales.
Hora
Fluke
Sistema
|(SISTEMA-FLUKE)|
03:36:54 p.m.
26,72
27,10
0,38
03:46:54 p.m.
26,98
27,20
0,22
03:56:54 p.m.
27,11
27,30
0,19
04:06:54 p.m.
27,17
27,30
0,13
04:16:54 p.m.
27,17
27,40
0,23
04:26:54 p.m.
27,50
28,20
0,70
04:36:54 p.m.
27,90
28,10
0,20
04:46:54 p.m.
28,50
28,80
0,30
04:56:54 p.m.
28,60
28,90
0,30
05:06:54 p.m.
27,50
27,76
0,26
05:16:54 p.m.
27,10
27,50
0,40
05:26:54 p.m.
26,80
26,80
0,00
05:36:54 p.m.
26,80
26,90
0,10
05:46:54 p.m.
27,20
27,40
0,10
05:56:54 p.m.
27,00
27,10
0,10
06:06:54 p.m.
27,1
27.2
0,10
06:16:54 p.m.
27,90
28,22
0,32
06:26:54 p.m.
27,90
28,22
0,32
Error Promedio:
0,25
118
Tabla D.3 Comparación medidas en el laboratorio de desarrollo, sistema CAN- Fluke 51 II.
HORA
10:10:43 a.m.
10:20:43 a.m.
10:30:43 a.m.
10:40:43 a.m.
10:50:43 a.m.
11:00:43 a.m.
11:10:44 a.m.
11:20:44 a.m.
11:30:44 a.m.
11:40:44 a.m.
11:50:44 a.m.
12:00:45 p.m.
12:10:45 p.m.
12:20:45 p.m
12:30:45 p.m
12:50:04 p.m.
01:00:04 p.m.
01:10:04 p.m.
01:20:04 p.m.
01:30:04 p.m.
02:40:05 p.m.
02:50:05 p.m.
03:00:05 p.m.
03:10:05 p.m.
03:20:05 p.m.
04:03:25 p.m.
04:13:25 p.m.
04:23:25 p.m.
04:33:26 p.m.
04:43:26 p.m.
04:53:26 p.m.
05:03:26 p.m.
05:13:26 p.m.
05:23:26 p.m.
FLUKE
SISTEMA |(SISTEMA-FLUKE)|
20,9
20,73
0,17
20,9
20,79
0,11
21
20,99
0,01
21
20,99
0,01
21,1
21,18
0,08
21,8
21,64
0,16
22,1
22,03
0,07
22,6
22,55
0,05
23,1
23,14
0,04
23,3
23,4
0,1
23,7
23,92
0,22
23,6
23,92
0,32
23,3
23,53
0,23
23,1
23,48
0,38
22,9
23,1
0,2
22,8
22,81
0,01
22,8
22,88
0,08
22,9
23,07
0,17
23
23,14
0,14
23,1
23,07
0,03
23
23,07
0,07
22,5
22,55
0,05
22,7
23,01
0,31
23
23,01
0,01
22,9
23,2
0,3
22,9
23,07
0,17
22,8
23,07
0,27
22,8
23,01
0,21
22,8
22,88
0,08
22,9
23,01
0,11
22,9
22,94
0,04
22,9
22,94
0,04
22,9
22,94
0,04
22,9
22,88
0,02
119
05:33:26 p.m.
05:43:26 p.m.
22,8
22,9
22,88
22,75
Error promedio:
120
0,08
0,15
0,13
Descargar