desarrollo de un sistema prototipo de monitoreo remoto del

Anuncio
Universidad Rafael Urdaneta.
Facultad De Ingeniería
Escuela de Computación.
Escuela de Eléctrica.
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
DESARROLLO DE UN SISTEMA PROTOTIPO DE MONITOREO REMOTO
DEL CONSUMO DE GASOLINA EN ESTACIONES DE SERVICIOS.
Autores:
Br. Aparicio Sánchez, Raúl Enrique.
Br. Labarca Córdova, Daniel Enrique.
Tutor Académico: Ing. Carlos Urdaneta.
Tutor Metodológico: Lic. Betilia Ramos.
Maracaibo, Mayo de 2005.
VEREDICTO
Nosotros, ________________________ titular de la C.I. Nº ______________
________________________________ titular de la C.I. Nº ______________
Integrantes del jurado, evaluamos el Trabajo Especial de Grado titulado:
S
O
D
DESARROLLO DE UN SISTEMA PROTOTIPO DE MONITOREO
REMOTO
VA
R
E
S
DEL CONSUMO DE GASOLINA ENE
ESTACIONES
DE SERVICIOS.
R
S
O
H
C
E
Realizado porR
E el Bachiller Raúl Enrique Aparicio Sánchez, titular de la C.I. Nº
D
15.718.993 como requisito para optar al titulo de Ingeniero Electricista; el cual recibe la
siguiente calificación ________________ (
) puntos.
Realizado por el Bachiller Daniel Enrique Labarca Córdova, titular de la C.I. Nº
16.119.092 como requisito para optar al titulo de Ingeniero en Computación; el cual
recibe la siguiente calificación ________________ (
) puntos.
Fechado el día ______________ del mes de ______________ de 2005.
________________________
________________________
Jurado
Jurado
II
DEDICATORIA
A Dios, quien es y será el guía de mis sueños, logros y metas. Gracias
A mi Querida Madre, por ser la más grande fuente de fortaleza, Gracias por todo
el apoyo y consejos. Tú siempre me diste fuerzas para continuar en los momentos más
difíciles.
A mi Gran Padre, siempre lo has dado todo por tus hijos, tu constancia y
S
O
D
VA
R
E
S
A mis Hermanos, por siempre mantenerse
unidos y darme todo su apoyo.
E
R
OS
H
C
E
A DanielE
a la Sra. Lilia por todo su apoyo y hacerme sentir como parte de su
D yR
dedicación es el ejemplo más grande, gracias por todo el apoyo a lo largo de mi carrera.
familia. Gracias por sus consejos.
A Todos mis Amigos que de una u otra manera ayudaron con la realización de
este proyecto. Gracias.
Raúl Aparicio.
III
DEDICATORIA
A Dios, quien es y será el guía de mis sueños, logros y metas. Gracias
A mi Querida madre, mi gran admiración, gracias por todo el esfuerzo y apoyo
que hiciste para que yo llegara hasta donde estoy en estos momentos.
A Chela, que junto con mi madre, lo ha dado todo por mi, las amo muchísimo.
S
O
D
todo, gracias por todos sus consejos, los quiero mucho.
VA
R
E
S
E
R
S
O
H
A mi hermana Andreina
y su esposo Jorge por todo su apoyo, sinceridad y
C
E
ER
aprecio, los D
quiero
mucho.
A mi tía Leti y tío Alfredo, mi modelo a seguir, que siempre me han ayudado en
A mi Gran Amigo Raúl, sus Padres y Hermanos, por todo su apoyo y hacerme
sentir como parte de su familia. Muchas gracias.
A Todos mis Amigos y Familiares que de una u otra manera ayudaron con la
realización de este proyecto. Gracias.
IV
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
AGRADECIMIENTO
En primer lugar a Dios y la Virgen, quienes
nos permitieron culminar una etapa importante
en nuestras vidas y nos brindaron la luz para que
los problemas grandes se hicieran pequeños.
“Que Grande es Dios”.
Agradezco infinitamente a nuestros grandes
maestros, Arnaldo Largo, Carlos Urdaneta,
Gerik Núñez, Nesky Tapia, Nerio Villalobos,
David Márquez y Edmundo Antoranz, de
quienes
nos
llevamos
conocimientos. Mil
nuestros
mejores
gracias y que Dios los
bendiga.
A todos nuestros compañeros por hacernos
saber que somos un gran equipo. Gracias
V
INDICE GENERAL
Veredicto………………………………………………………………….
II
Agradecimiento…………………………………………………………...
III
Dedicatoria…………………………………………………………..........
IV
Agradecimiento…………………………………………………………...
V
Índice…………………………………………………………...................
VI
Resumen…………………………………………………………..............
IX
Introducción…………………………………………………………........
X
Capitulo I…………………………………………………………............
11
Planteamiento y Formulación del Problema………………………
11
Objetivo general………..………..………..……………………….
13
Objetivos específicos………..………..………..………………….
13
Justificación e Importancia de la investigación………..………….
14
Delimitación Espacial………..………..………..…………………
16
Delimitación Temporal………..………..………..………..………
16
Capitulo II………..………..………..………..………..………..………..
17
Marco Teórico………..………..………..………..………..………
17
Antecedentes de la investigación………..………..………..………
17
Fundamentación Teórica………..………..………..………………
19
Sistema………..………..………..…………………………
19
Sistema de Información………..………..………….
19
Programación………..………..………..…………………..
19
Programación e ingeniería de software…………….
20
Programación Lineal………..………..…………….
20
Programación Estructurada………..………..………
21
Programación Orientada a Objetos…………………
22
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
VI
Redes………..………..………..………..………..…………
23
Clasificación de las redes………..………..………..……….
23
La red Internet………..………..………..…………………..
24
Protocolo………..………..………..………………………..
24
El protocolo TCP/IP………..………..………..……………
25
Protocolo http………..………..………..…………………..
25
Controlador………..………..………..…………………….
30
S
O
D
Microcontrolador………..………..………..………………
VA
R
E
S
E
R
Interrupciones……………………………………………..
OS
H
C
EREcomunes a todos los microcontroladores……….
DRecursos
Microprocesador………..………..………..……………….
Arquitectura básica de los microcontroladores……………
31
31
32
33
33
Herramientas para el desarrollo de aplicaciones
con microcontroladores……………………………………
34
Definición de términos básicos………..………..………..………..
35
Sistema de Variables e Indicadores………..………..………..…...
41
Definición operacional de las Variables………..………..………..
41
Capitulo III………..………..………..………..………..………..……….
43
Marco Metodológico………..………..………..………………….
43
Tipo y nivel de investigación………..………..…………..
43
Población y muestra………..………..………..…………..
44
Técnicas y recolección de datos………..………..………..
45
Metodología del diseño………..………..………..……….
48
VII
Capitulo IV………..………..………..………..………..………..……….
42
Análisis e Interpretación de los Resultados……………………….
42
Análisis del Sistema Actual………..………..………..…………...
42
Análisis del Sistema Propuesto………..………..………..………..
42
Conclusiones………..………..………..………..………..………..……..
Recomendaciones………..………..………..……………………………
Referencia Bibliográfica………..………..………..…………………….
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
VIII
APARICIO
SÁNCHEZ,
RAÚL.
LABARCA
CÓRDOVA,
DANIEL.
“DESARROLLO DE UN SISTEMA PROTOTIPO DE MONITOREO REMOTO DEL
CONSUMO DE GASOLINA EN ESTACIONES DE SERVICIOS” Universidad Rafael
Urdaneta. Maracaibo. Edo. Zulia, 2005.
RESUMEN
La presente investigación tiene como finalidad el desarrollo de un sistema
S
O
D
VA
R
E
Sesta constituida por las estaciones de
análisis, diseño e implementación. La población
E
R
S tomando de esta como muestra el modelo
O
servicio de Maracaibo Estado
Zulia,
H
C
E
TOCKHEIM PREMIER
DER C. Para el desarrollo de esta investigación, se estudió el
prototipo de monitoreo remoto del consumo de gasolina en estaciones de servicios, para
su realización se utilizó un tipo de investigación descriptiva, conjuntamente con su
comportamiento eléctrico de la muestra, realizando así un simulador utilizado para la
captura, transmisión, recolección, y registro de ventas a un servidor de base de datos,
llevándose a cabo el monitoreo de la información mediante una aplicación Web, donde
se le aplicó rigurosas pruebas con la finalidad de obtener la confiabilidad para luego
analizar e interpretar los resultados, los cuales fueron satisfactorios, llegando a las
conclusiones y recomendaciones pertinentes.
IX
INTRODUCCIÓN
A continuación se les presenta un trabajo de investigación titulado desarrollo de
un sistema prototipo de monitoreo remoto del consumo de gasolina en estaciones de
servicios, el cual tiene como finalidad dar a conocer la información necesaria para
abordar dicho tema.
Teniendo a su vez como único propósito generar el comportamiento eléctrico de
S
O
D
VA
R
E
S
maquinas surtidoras de gasolina, captura, recolección y registro de estas ventas en una
base de datos para poder controlar esta información mediante una aplicación Web.
E
R
S
Este trabajo está sustentado
HOapoyándonos en teoría de microprocesadores, la red
C
E
Internet, el protocolo
DERHTTP, teoría de base de datos, multiprogramación, programación
modular,
estructurada
y
orientada
a
objetos,
arquitectura
y
uso
de
los
microcontroladores, entre otras.
Capitulo I, denominado Planteamiento y Formulación del Problema, objetivo
general y específicos, Justificación, delimitación, de igual manera el Capitulo II
denominado Marco Teórico, donde planteamos antecedentes a la investigación,
fundamentación teórica y las diferentes teorías, seguido del Capitulo III, Marco
Metodológico, donde se expone el tipo de investigación, la población y muestra, etc.
Luego establecemos el Capitulo IV donde encontramos el análisis e interpretación
de los resultados.
X
CAPÍTULO I
Formulación del Problema
Planteamiento y Formulación del Problema
El mundo ha presenciado el vertiginoso crecimiento de Internet y el impacto que
S
O
D
VA
R
actualmente es utilizada por grandes empresas S
como
por ejemplo la supervisión del
E
Ela temperatura, potencia generada, etc.,
R
S
estado de transformadores de potencia
como
O
H
C
E
todo desde una estación
ER remota sin tener un empleado encargado que esté presente para
D
el monitoreo de el estado de dichos transformadores. Internet no solo se ha convertido
ha tenido en la vida diaria de toda persona. La necesidad de controlar y monitorear
sistemas complejos remotamente desde cualquier parte del mundo es una realidad que
en un medio de comunicación masivo, sino una plataforma de integración de sistemas.
Debido al rápido progreso de la tecnología, muchas áreas están convergiendo
rápidamente, y las diferencias entre juntar, transportar, almacenar y procesar
información desaparecen con rapidez. La fusión de las computadoras y las
comunicaciones han tenido una profunda influencia de la forma en que los sistemas de
cómputo se organizan, de este modo, al crecer la habilidad para obtener, procesar y
distribuir información también crece la demanda de técnicas de procesamiento de
información más avanzada.
Actualmente las compañías surtidoras de gasolina poseen métodos de control
inexactos que están expuestos al error humano. En Venezuela este problema es muy
común en estaciones de servicios de compañías tanto nacionales como internacionales.
En el estado Zulia, específicamente en Maracaibo, estaciones surtidoras de gasolina
transnacionales como la British Petroleum (BP), TEXACO, SHELL, MOBIL y
nacionales como PDV, LLANOPETROL, entre otras, tienen actualmente este sistema
manual de control de consumo de gasolina.
11
12
El problema del actual registro se manifiesta debido a que por cada turno se debe
hacer un conteo de las ventas, y la probabilidad de que existan errores es alta porque son
conteos manuales que fácilmente son alterados por el operador de isla para beneficio
personal, lo que genera un control poco confiable para los dueños o gerentes de
estaciones de servicio que se demuestra fácilmente por los siguientes factores: perdida
de tiempo y dinero al momento de presentar el empleado el cierre de turno.
El actual sistema manual e ineficiente difiere notablemente con el alto nivel de
automatización y eficiencia del nuevo sistema de registro a implementar. Para solventar
S
O
D
VA
R
E
Sde servicio puede estar al corriente de
mediante el cual el dueño o gerente de la estación
E
R
S es decir, tiene el registro exacto de los
Omomento,
todo lo que ha sucedido hasta
el
H
C
E
montos que se generen
DER de cualquier turno de operador de isla.
dichos inconvenientes y lograr un mejor uso de dichos recursos se plantea el Análisis,
diseño, desarrollo e implementación de un sistema de registro de consumo de gasolina
Entonces, lo anteriormente planteado lleva a formular la siguiente pregunta:
¿Como desarrollar un sistema prototipo de monitoreo remoto del consumo
de gasolina en estaciones de servicios?
13
Objetivos de la investigación.
Objetivo general.
Desarrollar un sistema prototipo de monitoreo remoto del consumo de gasolina
en estaciones de servicios.
Objetivos específicos.
•
S
O
D
VA
R
E
S
Detectar las vías de recolección de la información requerida de una maquina
surtidora de gasolina.
•
E
R
S
Elaborar una aplicación
HdeOsimulación de datos generados por una estación de
C
E
servicio.
DER
•
Diseñar un sistema de captura de datos de las transacciones de consumo de
gasolina
•
Implementar una interfase de recepción y Control.
•
Realizar un protocolo de comunicaciones entre el sistema de recolección de
datos y el control central.
•
Diseñar una aplicación de registro de datos del control central a la base de datos
•
Diseñar una aplicación que calcule el consumo de gasolina por turno de los
empleados de la estación de servicio que permita ser consultado vía Web.
•
Describir los análisis y técnicas implementadas que se empleen para desarrollar
un sistema prototipo de monitoreo remoto del consumo de gasolina en
estaciones de servicios.
14
Justificación e Importancia de la investigación.
El desarrollo de un sistema de registro de consumo de gasolina para
estaciones de servicios tendrá como consecuencia una serie de beneficios tales
como la optimización de la contabilidad de las ventas realizadas. Importancia
relevante de esta investigación es eliminar la dependencia que tiene el operador de
isla con las tareas diarias de contabilidad, y suprime el efecto que tiene el empleado
sobre las mismas, otorgándole al Gerente o dueño de estación de servicio la garantía
del control absoluto del consumo de gasolina.
S
O
D
VA
R
E
Scualquier inconsistencia rápida y
manejará de manera digital, se corrige
E
R
S en la disminución de los costos al suprimir
O
efectivamente sin mencionar
el impacto
H
C
E
la contratación
de un empleado extra que se encargue de realizar esta contabilidad.
DER
Debido a que la información de todos los registros de consumo por isla se
Otra de las grandes ventajas de este sistema de control radica en el fácil
acceso que tendrá el gerente o dueño de la estación de servicio a toda esta
información relacionada con las ventas, manejando una o varias estaciones de
servicio con un método rápido y confiable sin la necesidad de estar presente en la
estación lo cual traerá como consecuencia un incremento de los ingresos
económicos en cada estación.
Con la investigación y desarrollo de este sistema e implementando
tecnología de punta, se brindará a dueños y gerentes de estaciones de servicio
soluciones escalables y de valor agregado para sus operaciones de negocios.
Este diseño se ha desarrollado como un sistema amigable a cualquier
usuario, pensando en esto las pantallas de captura de información de islas, turnos,
créditos de combustibles, control de cierre y tanques, se han integrado de tal forma
que son idénticas a una planilla manual.
Esta investigación tiene como objetivo generar valor agregado a las
operaciones de negocios de los clientes, con un excelente recurso tecnológico, cuyo
15
propósito es diseñar, desarrollar, fabricar y comercializar software de alta calidad
para el control y administración de estaciones de gas y gasolina, con el fin de
satisfacer las necesidades y expectativas de los mismos.
Este sistema esta orientado a conseguir la integración total en los
procesos Administrativos. Es una herramienta imprescindible para la toma de
decisiones Gerenciales.
Un gran aporte de esta investigación es proveer tecnología especializada
S
O
D
VA
R
E
relacionados, siempre desarrollados conE
laS
más alta tecnología y calidad para
R
S venezolano.
satisfacer las necesidades H
del O
mercado
C
E
DER
y competitiva para satisfacer las necesidades de gerentes o dueños de estaciones de
servicio para transferencia de combustible y fluidos, administración y productos
16
Delimitación
Delimitación Espacial
El Desarrollo del sistema de monitoreo remoto del consumo de gasolina en
estaciones de servicio se llevara a cabo en Venezuela, estado Zulia. Específicamente en
la Universidad Rafael Urdaneta.
E
R
S
HO
S
O
D
VA
R
E
S
Delimitación Temporal
EC
R
E
D
La investigación se inició en un periodo comprendido entre Mayo 2004 – Mayo
2005.
CAPÍTULO II
Marco Teórico
Antecedentes de la investigación
Para la realización y desarrollo de este sistema se han tomado trabajos de
investigación previos con características y tecnologías similares.
Estos trabajos son:
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Barios Olavarreta, Jackni Rosario y Mora Soto, Hugo Rafael (1999). Diseño de
un Prototipo de un Sistema Integrado para el acceso, monitoreo y administración de
redes en forma remota. El presente proyecto de investigación tiene como propósito
diseñar un prototipo de un sistema integrado para el acceso, monitoreo y administración
de redes en forma remota, el cual consiste en una interfaz de conexión a través de
Internet entre un usuario y el servidor de su empresa, estableciendo la posibilidad de
gestión operativa de la red desde cualquier punto geográfico. Esta investigación es de
tipo exploratoria y explicativa. Para el desarrollo de este proyecto se aplica la
metodología de Edward Yourdon “Análisis Estructurado Moderno” 1996 y se obtuvo
información a través del estudio de las alternativas existentes en el mercado. Luego de
realizar el análisis diseño y construcción del prototipo se realizaron las pruebas. Los
resultados indican la operabilidad del sistema. La importancia de este proyecto esta
basada en la capacidad de conectar los usuarios con la red local desde cualquier sitio
remoto utilizando un enlace de Internet para realizar tanto las operaciones comunes
como las administrativas. El uso de este sistema reducirá la necesidad de la presencia
permanente del administrador de red en el área local.
Velásquez Marcano, Frank Enrique (1999), Desarrollo de un sistema de
Monitoreo y control Multi-entradas basados en una PC. El desarrollo de monitoreo y
control basados en una PC atiende la necesidad de sustitución y mejora de sistema de
17
18
monitoreo de fabricación propia, relacionadas con su incapacidad para tomar acciones
de control, para visualizar varias señales simultáneamente y la dificultad para conseguir
sus repuestos en caso de requerirlos. Por esta razón esta investigación tiene como
objetivo principal el desarrollo de monitoreo y control basados en una PC. El tipo de
investigación es aplicada y la metodología utilizada para el desarrollo de la
investigación fue propia de los autores de este estudio; representadas en los siguientes
pasos: Análisis de la Investigación practica y teórica del sistema de monitoreo,
Determinación de las necesidades y mecanismos para el desarrollo de este trabajo de
grado, Diseño de Hardware, Estudio de la factibilidad, Elaboración de Hardware y
S
O
D
VA
R
E
S personal y de gran facilidad en el
entradas de varias señales asistidas por el computador
E
R
S relación entre el sistema desarrollado y el
O
manejo, estableciendo así una
buena
H
C
E
operador, logrando
con ello cumplir con los objetivos propuestos.
DER
Software, Realización de pruebas y análisis de los resultados. Por medio de esta
investigación de un sistema de monitoreo y control con capacidad de registrar las
Márquez, David Julio(2004)Desarrollo del Modulo de de trascripción y
consignación de notas para el sistema académico administrativo de la Universidad
Rafael Urdaneta. El desarrollo de un módulo de aplicaciones web o de servicios
virtuales tendría como consecuencia una serie de beneficios tales como disponibilidad
de la información de los inscritos en las materias asignadas a un profesor en tiempo real,
es decir, dicha información se actualiza en forma automática durante el proceso de
inscripción y modificación de inscripciones de los alumnos. Así mismo el cuello de
botella o retraso generado por la verificación y distribución de planillas en la dirección
de control de estudios desaparecerá después de la implantación de dicho modulo.
Debido a que la información de todos los cursos de cada periodo se manejará de manera
digital, es posible corregir cualquier inconsistencia rápida y efectivamente sin
mencionar el impacto en la disminución de los costos de tinta y papel que conlleva un
proceso informático altamente automatizado. Finalmente la inclusión de los profesores
de una manera mas activa en dicho proceso disminuirá la carga de trabajo del personal
adjunto de la dirección de control de estudios permitiéndole desempeñar eficientemente
otros servicios mejorando su tiempo de respuesta en la atención a los profesores y el
alumnado.
19
Fundamentación Teórica
Sistema
Siendo el objetivo principal de este trabajo es desarrollar un sistema de
información apoyado en varias tecnologías como los microcontroladores y tecnología
Web para la disponibilidad remota de información, es necesario definir el concepto de
sistema, más adelante el de sistema de información. Se puede definir un sistema como
un conjunto de elementos que tiene funciones diferentes pero que se integran para lograr
S
O
D
VA
R
E
S
un objetivo común. La definición de cada uno de estos elementos es a su vez un sistema
más pequeño, o sea que los sistemas pueden estar formados por niveles de sistemas o
E
R
S
HO
subsistemas.
EC
R
E
D de Información
Sistema
Un sistema de información es un sistema cuyos elementos están compuestos por
personas, procesos y equipos que tienen el objetivo de coleccionar y procesar
información para llevar a cabo tareas específicas, tales como gerencia, tomas de
decisiones o coordinación de procesos. Dentro de una organización, el sistema de
información es el canal que une a las personas o departamentos, ya que por medio de
este fluyen los datos que son generalmente compartidos.
Programación
Como termino se utiliza para designar la creacion de programas a pequeña
escala, el desarrollo de sistemas complejos se denomina ingenieria de software.
Una computadora es totalmente inutil si no dispone de un programa capaz de
procesar
información.
Para que se realize dicho procesamiento de información habra sido necesario construir
un ordenador (hardware), pensar y crear un programa (software) y ejecutar dicho
programa
o
aplicación
en
el
computador.
La ultima de estas fases es la que realiza el usuario, las anteriores son realizadas por
tecnicos que construyen el hardware y por programadores que desarrollan el software.
20
Programación e ingeniería de software:
Son complementarias entre si. Para el desarrollo de grandes sistemas
informáticos se divide el trabajo en tareas que diversos programadores desarrollaran. Al
terminar se unen las piezas como en un puzzle para completar el sistema en si. Así
programación tambien se aplica para el desarrollo de grandes sistemas en las ingenierias
de software.
La programación tiene como objetivo el tratamiento de la información
S
O
D
VA
R
E
S
correctamente, con lo que se espera que un programa de el resultado correcto y no uno
erroneo. Asi que cada aplicacion debe funcionar segun lo esperado en terminos de
E
R
S
Otro objetivo fundamental
HOde la programación es que sean de codigos claros y
C
E
R si un programador inicia un programa y no lo termina, otro
legibles, con
DloEque
programación.
programador
sea
capaz
de
entender
la
codificacion
y
poder
terminarlo.
Normalmente en programación existen ciertas normas no escritas de como han de
nombrarse los componentes, objetos o controles de cada sistema, asi como sus variables
que deben ser relativas al termino al cual se van a vincular. Por ejemplo el texto que
contenga la edad del individuo se llamaria TxtEdad, y su variable se llamaria Edad.
Por ultimo la programación pretende que sus programas sean utiles y eficientes.
De multitud de maneras la programación nos dara el mismo resultado de un programa,
un buen programador llegara al mismo resultado con un minimo de codigo y de la
forma más clara y logica posible.
De los anteriormente nombrados objetivos de la programación el más importante
es el de la correccion, ya que un codigo claro y legible facilita el mantenimiento de la
aplicacion o sistema.
Programación Lineal
En programación lineal se habla de términos tales como restricciones, que
vienen a ser la manipulación del tamaño de funciones que se encuentran sujetas a ciertas
limitaciones.
21
Podemos decir que la programación lineal es el conjunto de técnicas
matemáticas que intentan resolver la maximización o minimización de una función
objetivo, función lineal de varias variables, sujeta a ciertas restricciones, expresadas por
inecuaciones lineales.
En problemas de programación lineal intervienen:
La función f(x,y) = ax + by + c conocida también como función objetivo (a la
cual deberemos optimizar). Aquí x e y son las variables de decisión, mientras que a, b y
c son constantes.
S
O
D
A
V
R
E
impuesto por las limitaciones, que son: inferioresS
a ... ( menores: < o ); como mínimo de
E
R
... (mayores: > o ) . Maximizando
OoSminimizando, las desigualdades pueden darse en
H
C
E
cualquiera de los
DEdosRsentidos.
Las restricciones que deben ser inecuaciones lineales, donde su número depende
del problemaen que trabajemos. También ver que el carácter de desigualdad viene
Valores de x e y que verifican todas y cada una de las restricciones, lo que se
conoce como conjunto o región factible.
La solución óptima del problema será un par de valores (x0, y0) del conjunto
factible que haga que f(x,y) tome el valor máximo o mínimo.
Se utilizan las siglas PPL para indicar problema de programación lineal.
Programación Estructurada
La programación estructurada es una teoría de programación que consiste en
construir programas de facil comprensión.
La programación estructurada es especialmente util, cuando se necesitan realizar
correciones o modificaciones después de haber concluido un programa o aplicacion. Al
haberse utilizado la programación estructurada, es mucho más sencillo entender la
codificacion del programa, que se habra hecho en diferentes secciones.
La programación estructurada se basa en una metodologi de desarrollo de
programas llamda refinamiento sucesivos: Se plantea una operacion como un todo y se
divide en segmentos más sencillos o de menor complejidad. Una vez terminado todos
los segmentos del programa, se procede a unificar las aplicaciones realizadas por el pool
22
de programadores. Si se ha utilizado adecuadamente la programación estructurada, esta
integracion debe ser sencilla y no presentar problemas al integrar la misma , y de
presentar algun problema, sera rapidamente detectable para su correccion.
Programación Orientada a Objetos
La programación orientada a objetos, intenta simular el mundo real a traves del
significado de objetos que contiene caracteristicas y funciones. Los lenguajes orientados
a objetos se clasifican como lenguajes de quinta generacion.
S
O
D
A y procedimientos
la idea de un objeto, que es una combinacion de variables
Vlocales
R
E
S de programación.
llamados metodos que juntos conforman una
entidad
E
R
S
O
H
C
El termino encapsulacion
se
usa
para describir la combinacion de estructuras de
E
R
E
D que son manipulados por el objeto. La llamada a un objeto es lo que
datos y de metodos
Como su mismo nombre indica, la programación orientada a objetos se basa en
se denomina pasar un "aviso" a un objeto.
En la programación orientada a objetos, encapsular significa, reunir y controlar
el grupo resultante como un todo y no individualmente.
En la programación orientada a objetos la abstraccion es un termino externo al
objeto, que controla la forma en que es visto por los demas.
En la programación orientada a objetos la modularidad se considera de la
siguiente manera: Un programa grande siempre sera más complicado que la suma de
varios programas pequeños, con lo que se considera ventajoso dividir un gran sistema
en diversos modulos.
En la programación orientada a objetos tenemos la jerarquia, la cual consiste en
la clasificacion y organizacion de las abstracciones segun su naturaleza. El más claro
ejemplo de jerarquia es la herencia.
En la programación orientada a objetos se define la herencia como una jerarquia
de extracciones, y la relacion entre clases, donde se comparte la estructura y el
comportamiento de una o más clase considerada como clases superiores o una
superclase, con lo cual se resume que la herencia es una unidad independiente por si
misma heredada de una abstraccion o superclase. Un ejemplo cotidiano lo encontramos
en las aplicaciones que existen cactualmente en el mercado, donde un formulario
23
cualquiera hereda las caracteristicas de uan ventana del sistema operativo Windows
(Maximizar, Minimizar, Cerrar).
Redes
Las redes de comunicación de datos son utilizadas para que varias computadoras
se comuniquen y puedan intercambiar datos y información. A si como compartir recurso
de computo, almacenamiento, impresión.
S
O
D
VA
R
LAN (Local Area Network): Redes de Área
Local
E
S
E
R
OS
H
C
EREde comunicación entre computadoras que permite compartir
Es un
Dsistema
Clasificación de las redes
información, con la característica de que la distancia entre las computadoras debe ser
pequeña. Estas redes son usadas para la interconexión de computadores personales y
estaciones de trabajo. Se caracterizan por: tamaño restringido, tecnología de transmisión
(por lo general broadcast), alta velocidad y topología.
Son redes con velocidades entre 10 y 100 Mbps, tiene baja latencia y baja tasa
de errores. Cuando se utiliza un medio compartido es necesario un mecanismo de
arbitraje para resolver conflictos.
Dentro de este tipo de red podemos nombrar a INTRANET, una red privada que
utiliza herramientas tipo internet , pero disponible solamente dentro de la organización.
Ej.: IEEE 802.3 (Ethernet), IEEE 802.4 (Token Bus), IEEE 802.5 (Token Ring)
MAN (Metropolitan Area Network): Redes de Área Metropolitana
Es una versión de mayor tamaño de la red local. Puede ser pública o privada.
Una MAN puede soportar tanto voz como datos. Una MAN tiene uno o dos cables y no
tiene elementos de intercambio de paquetes o conmutadores, lo cual simplifica bastante
el diseño. La razón principal para distinguirla de otro tipo de redes, es que para las
MAN's se ha adoptado un estándar llamado DQDB (Distributed Queue Dual Bus) o
IEEE 802.6. Utiliza medios de difusión al igual que las Redes de Área Local.
24
WAN (Wide Area Network): Redes de Amplia Cobertura
Son redes que cubren una amplia región geográfica, a menudo un país o un
continente. Este tipo de redes contiene máquinas que ejecutan programas de usuario
llamadas hosts o sistemas finales (end system). Los sistemas finales están conectados a
una subred de comunicaciones. La función de la subred es transportar los mensajes de
un host a otro.
En la mayoría de las redes de amplia cobertura se pueden distinguir dos
S
O
D
A
V
R
E
de intercambio son computadores especializados
Sutilizados para conectar dos o más
E
R
líneas de transmisión.
OS
H
C
E
ER
Las D
redes
de área local son diseñadas de tal forma que tienen topologías
componentes: Las líneas de transmisión y los elementos de intercambio (Conmutación).
Las líneas de transmisión se conocen como circuitos, canales o truncales. Los elementos
simétricas, mientras que las redes de amplia cobertura tienen topología irregular. Otra
forma de lograr una red de amplia cobertura es a través de satélite o sistemas de radio.
Ej. : X.25, RTC, ISDN, etc.
La red Internet
Internet, interconexión de redes informáticas que permite a los ordenadores o
computadoras conectadas comunicarse directamente, es decir, cada ordenador de la red
puede conectarse a cualquier otro ordenador de la red. El término suele referirse a una
interconexión en particular, de carácter planetario y abierto al público, que conecta
redes informáticas de organismos oficiales, educativos y empresariales.
Protocolo
Los protocolos son reglas y procedimientos para la comunicación. El término
«protocolo» se utiliza en distintos contextos. Por ejemplo, los diplomáticos de un país se
ajustan a las reglas del protocolo creadas para ayudarles a interactuar de forma correcta
con los diplomáticos de otros países. De la misma forma se aplican las reglas del
25
protocolo al entorno informático. Cuando dos equipos están conectados en red, las
reglas y procedimientos técnicos que dictan su comunicación e interacción se
denominan protocolos.
El protocolo TCP/IP
TCP/IP es el protocolo común utilizado por todos los ordenadores conectados a
Internet, de manera que éstos puedan comunicarse entre S. Hay que tener en cuenta que
S
O
D
hardware y software incompatibles en muchos casos, además
VAde todos los medios y
R
E
S de las grandes ventajas del TCP/IP,
formas posibles de conexión. Aquí se encuentra
una
E
R
OdeSque la comunicación entre todos sea posible.
pues este protocolo se encargará
H
C
E
TCP/IP es compatible
DERcon cualquier sistema operativo y con cualquier tipo de hardware.
en Internet se encuentran conectados ordenadores de clases muy diferentes y con
Protocolo http
El Protocolo de Transferencia de HiperTexto (Hypertext Transfer Protocol) es
un sencillo protocolo cliente-servidor que articula los intercambios de información entre
los clientes Web y los servidores HTTP. La especificación completa del protocolo
HTTP 1/0 está recogida en el RFC 1945. Fue propuesto por Tim Berners-Lee,
atendiendo a las necesidades de un sistema global de distribución de información como
el World Wide Web.
Desde el punto de vista de las comunicaciones, está soportado sobre los
servicios de conexión TCP/IP, y funciona de la misma forma que el resto de los
servicios comunes de los entornos UNIX: un proceso servidor escucha en un puerto de
comunicaciones TCP (por defecto, el 80), y espera las solicitudes de conexión de los
clientes Web. Una vez que se establece la conexión, el protocolo TCP se encarga de
mantener la comunicación y garantizar un intercambio de datos libre de errores.
26
HTTP se basa en sencillas operaciones de solicitud/respuesta. Un cliente
establece una conexión con un servidor y envía un mensaje con los datos de la solicitud.
El servidor responde con un mensaje similar, que contiene el estado de la operación y su
posible resultado. Todas las operaciones pueden adjuntar un objeto o recurso sobre el
que actúan; cada objeto Web (documento HTML, fichero multimedia o aplicación CGI)
es conocido por su URL. Los recursos u objetos que actúan como entrada o salida de un
comando HTTP están clasificados por su descripción MIME. De esta forma, el
protocolo puede intercambiar cualquier tipo de dato, sin preocuparse de su contenido.
La transferencia se realiza en modo binario, byte a byte, y la identificación MIME
S
O
D
VA
R
E
S
permitirá que el receptor trate adecuadamente los datos.
E
R
S
HO
Etapas de una transacción http
EC
R
E
D
Para profundizar más en el funcionamiento de HTTP, se verá primero un
caso particular de una transacción HTTP; en los siguientes apartados se analizarán las
diferentes partes de este proceso.
Cada vez que un cliente realiza una petición a un servidor, se ejecutan los
siguientes pasos:
1. Un usuario accede a una URL, seleccionando un enlace de un documento
HTML o introduciéndola directamente en el campo Location del cliente Web.
2. El cliente Web descodifica la URL, separando sus diferentes partes. Así
identifica el protocolo de acceso, la dirección DNS o IP del servidor, el posible
puerto opcional (el valor por defecto es 80) y el objeto requerido del servidor.
3. Se abre una conexión TCP/IP con el servidor, llamando al puerto TCP
correspondiente.
4. Se realiza la petición. Para ello, se envía el comando necesario (GET, POST,
HEAD,…), la dirección del objeto requerido (el contenido de la URL que sigue
a la dirección del servidor), la versión del protocolo HTTP empleada (casi
siempre HTTP/1.0) y un conjunto variable de información, que incluye datos
sobre las capacidades del browser, datos opcionales para el servidor,…
27
5. El servidor devuelve la respuesta al cliente. Consiste en un código de estado y el
tipo de dato MIME de la información de retorno, seguido de la propia
información.
6. Se cierra la conexión TCP.
Este proceso se repite en cada acceso al servidor HTTP. Por ejemplo, si se
recoge un documento HTML en cuyo interior están insertadas cuatro imágenes, el
proceso anterior se repite cinco veces, una para el documento HTML y cuatro para las
imágenes. En la actualidad se ha mejorado este procedimiento, permitiendo que una
misma conexión se mantenga activa durante un cierto periodo de tiempo, de forma que
S
O
D
A Esta mejora es
Vmodernos.
R
Alive, es empleado por la mayoría de los clientes y servidores
E
S el establecimiento de cada nueva
E
R
imprescindible en una Internet saturada,
en
la
que
S
O
H
C
conexión es un procesoE
lento y costoso.
DER
sea utilizada en sucesivas transacciones. Este mecanismo, denominado HTTP Keep
Veamos el proceso completo con un ejemplo:
1. Desde un cliente se solicita la URL http://www.unican.es/invest/default.html
2. Se abre una conexión TCP/IP con el puerto 80 del sistema www.unican.es.
3. El cliente realiza la solicitud, enviando algo similar a esto:
GET /invest/default.html HTTP/1.0 Operación solicitada+objeto+versión de
HTTP
Accept: text/plain Lista de tipos MIME que acepta o entiende
Accept: text/html el cliente
Accept: audio/*
Accept: video/mpeg
......
Accept: */* Indica que acepta otros posibles tipos MIME
User-Agent: Mozilla/3.0 (WinNT; I) Información sobre el tipo de cliente
Línea en blanco, indica el final de la petición
28
4. El servidor responde con la siguiente información:
HTTP/1.0 200 OK Status de la operación; en este caso, correcto
Date: Monday, 7-Oct-96 18:00:00 Fecha de la operación
Server: NCSA 1.4 Tipo y versión del servidor
MIME-version: 1.0 Versión de MIME que maneja
Content-type: text/html Definición MIME del tipo de datos a devolver
Content-length: 254 Longitud de los datos que siguen
S
O
D
VA
R
E
S
Last-modified: 6-Oct-96 12:30:00 Fecha de modificación de los datos
Línea en blanco
E
R
S
HO
<HTML> Comienzo de los datos
EC
R
E
D
<HEAD><TITLE>Recursos de investigación en UNICAN</TITLE></HEAD>
<BODY>
......
......
</HTML>
5. Se cierra la conexión.
Arquitectura cliente/servidor
Arquitectura hardware y software adecuada para el proceso distribuido, en el
que la comunicación se establece de uno a varios. Un proceso es un programa en
ejecución. Proceso cliente es el que solicita un servicio. Proceso servidor es el capaz
de proporcionar un servicio. Un proceso cliente se puede comunicar con varios
procesos servidores y un servidor se puede comunicar con varios clientes. Los
procesos pueden ejecutarse en la misma máquina o en distintas máquinas
comunicadas a través de una red. Por lo general, la parte de la aplicación
correspondiente al cliente se optimiza para la interacción con el usuario,
ejecutándose en su propia máquina, a la que se denomina terminal o cliente,
mientras que la parte correspondiente al servidor proporciona la funcionalidad
29
multiusuario centralizada y se ejecuta en una máquina remota, denominada de forma
abreviada, simplemente, servidor.
Los servidores hardware tienen fundamentalmente dos funciones, bien
“servidores de aplicaciones”, que alojan distintos tipos de programas que pueden
llamarse desde y ejecutarse en los terminales, bien “servidores de bases de datos”,
que alojan archivos con datos que pueden ser consultados y/o editados y
modificados en las máquinas terminales o clientes; también pueden ser servidores de
ambos tipos simultáneamente.
S
O
D
VA
R
E
Si se trata de una red de área local,
la S
interconexión entre el o los servidores
E
R
S
y los clientes es directa,
mediante
HO un sistema de cable o red inalámbrica; si es una
C
E
red corporativa
DERdistribuida o a través de Internet, la interconexión es indirecta, y la
alternativa más común es mediante un módem y vía telefónica.
Una aplicación cliente/servidor típica es un servidor de base de datos al que
varios usuarios realizan consultas simultáneamente. El proceso cliente realiza una
consulta, el proceso servidor le envía las tablas resultantes de la consulta y el
proceso cliente las interpreta y muestra el resultado en pantalla. Los sistemas
distribuidos pueden consistir en diversos servidores que alojen datos, de forma que
el cliente no tiene por qué conocer exactamente dónde se encuentran, simplemente
hace una petición de servicio, y es el sistema servidor el encargado de localizarlos y
proporcionar el resultado de la consulta al usuario que hizo la petición.
Seguridad en el Web
Hasta el momento, se ha presentado un Web que ofrece un acceso abierto a un
conjunto de información que explícitamente se hace pública. Sin embargo, en
determinadas circunstancias, es interesante poder limitar el acceso a documentos
reservados o útiles para un conjunto restringido de personas. Se pueden establecer dos
tipos de restricciones:
30
1. Limitación de acceso en función de direcciones IP o dominio. Sólo los usuarios
de un dominio u organización tendrán acceso a la información.
2. Limitación de acceso por nombres de usuario y claves de acceso. Sólo los
usuarios que conozcan una clave de acceso válida pueden acceder a la
información.
Otro aspecto que está cobrando especial importancia es la seguridad de la
información que se intercambia en el Web. La explotación comercial de Internet exige
disponer de sistemas de comunicación seguros, capaces de adaptarse a las necesidades
de los nuevos servicios, como la compra electrónica o la banca a distancia. En estos
S
O
D
VA de información son
R
tanto el usuario de un cliente Web como un determinado
servidor
E
S
E
R
quienes dicen ser) y la confidencialidad
(hacer
que la información intercambiada no
S
O
H
pueda ser interceptada E
porC
terceros).
R
E
D
servicios, se manejan dos conceptos fundamentales, la autentificación (garantizar que
Con los sistemas de comunicación actualmente en uso, es técnicamente posible
‘pinchar’ un enlace de comunicaciones e interceptar el contenido de las comunicaciones
TCP/IP que por él se transmiten. Cuando se envía información privada, por ejemplo un
número de tarjeta de crédito en un formulario de compra, es vital garantizar que la
información sea recibida exclusivamente por su destinatario, y que la identidad es la
esperada.
Controlador
Recibe el nombre de controlador el dispositivo que se emplea para el gobierno
de uno o varios procesos. Por ejemplo, el controlador que regula el funcionamiento de
un horno dispone de un sensor que mide constantemente su temperatura interna y,
cuando traspasa los límites prefijados, genera las señales adecuadas que accionan los
efectores que intentan llevar el valor de la temperatura dentro del rango estipulado.
Aunque el concepto de controlador ha permanecido invariable a través del
tiempo, su implementación física ha variado frecuentemente. Hace tres décadas, los
controladores se construían exclusivamente con componentes de lógica discreta,
posteriormente se emplearon los microprocesadores, que se rodeaban con chips de
memoria y E/S sobre una tarjeta de circuito impreso. En la actualidad, todos los
elementos del controlador se han podido incluir en un chip, el cual recibe el nombre de
31
microcontrolador. Realmente consiste en un sencillo pero completo computador
contenido en el corazón (chip) de un circuito integrado.
Microprocesador
Circuito electrónico que actúa como unidad central de proceso de un ordenador,
proporcionando el control de las operaciones de cálculo. Los microprocesadores
también se utilizan en otros sistemas informáticos avanzados, como impresoras,
S
O
D
VA
R
E
S
automóviles o aviones. El microprocesador es un tipo de circuito sumamente integrado.
E
R
S
HO
EC
R
E
D
Microcontrolador
Un microcontrolador es un circuito integrado de alta escala de integración que
incorpora la mayor parte de los elementos que configuran un controlador.
Un microcontrolador dispone normalmente de los siguientes componentes:
Procesador o UCP (Unidad Central de Proceso).
Memoria RAM para Contener los datos.
Memoria para el programa tipo ROM/PROM/EPROM.
Líneas de E/S para comunicarse con el exterior.
Diversos módulos para el control de periféricos (temporizadores, Puertas Serie y
Paralelo, CAD: Conversores Analógico/Digital, CDA: Conversores Digital/Analógico,
etc.).
Generador de impulsos de reloj que sincronizan el funcionamiento de todo el
sistema.
Los productos que para su regulación incorporan un microcontrolador disponen
de las siguientes ventajas:
Aumento de prestaciones: un mayor control sobre un determinado elemento
representa una mejora considerable en el mismo.
Aumento de la fiabilidad: al reemplazar el microcontrolador por un elevado
número de elementos disminuye el riesgo de averías y se precisan menos ajustes.
32
Reducción del tamaño en el producto acabado: La integración del
microcontrolador en un chip disminuye el volumen, la mano de obra y los stocks.
Mayor flexibilidad: las características de control están programadas por lo que
su modificación sólo necesita cambios en el programa de instrucciones.
El microcontrolador es en definitiva un circuito integrado que incluye todos los
componentes de un computador. Debido a su reducido tamaño es posible montar el
controlador en el propio dispositivo al que gobierna. En este caso el controlador recibe
el nombre de controlador empotrado (embedded controller).
Interrupciones
S
O
D
VA
R
E
S
E
R
S
HO
Existen tres tipos de interrupciones, a saber: interrupciones por hardware,
EC
R
E
D
interrupciones por software e interrupciones de excepción.
Se entiende como interrupción por hardware aquella interrupción solicitada por
un dispositivo de hardware. Existen dos tipos de estas interrupciones, a saber: las
mascarables y las no mascarables. Las interrupciones de hardware mascarables son
aquellas que pueden ser deshabilitadas. Las no mascarables son aquellas que no pueden
ser deshabilitadas.
Se entiende como interrupción por software aquella interrupción solicitidada a
través de una instrucción de interrupción, como por ejemplo la instrucción INT 30,
donde INT es la instrucción de interrupción de la serie de microprocesadores Intel
(8088, 80286, 80386, 80486, Pentium, Pro Pentium) y 30 es el número del Puntero de la
subrutina de servicio de dicha interrupción.
Se entiende como interrupción de excepción aquella interrupción del programa
en curso a consecuencia de alguna anormalidad durante la ejecución de dicho programa
o un error en el sistema.
33
Después que una de estas interrupciones halla sido activada, el microprocesador
almacena todos sus registros programables en la Pila (Stack). Luego se accesa el
puntero de la interrupción activada, con el fin de comenzar a ejecutar la subrutina de
servicio pertinente. La localidad de memoria donde se encuentran todos los punteros de
las diferentes subrutinas de servicio es conocida con el nombre de Tabla de Vectores de
Interrupción.
La localidad de memoria de la tabla de vectores de interrupciones y como se
procesan las solicitudes de interrupciones en un microprocesador depende de la
arquitectura del microprocesador.
S
O
D
VA
R
E
S
E
R
S
Recursos comunesC
a todos
HOlos microcontroladores
E
R los microcontroladores integrados en un chip, su estructura
DEtodos
Al estar
fundamental y sus características básicas son muy parecidas. Todos deben disponer de
los bloques esenciales Procesador, memoria de datos y de instrucciones, líneas de E/S,
oscilador de reloj y módulos controladores de periféricos. Sin embargo, cada fabricante
intenta enfatizar los recursos más idóneos para las aplicaciones a las que se destinan
preferentemente.
En este apartado se hace un recorrido de todos los recursos que se hallan en
todos los microcontroladores describiendo las diversas alternativas y opciones que
pueden encontrarse según el modelo seleccionado.
Arquitectura básica de los microcontroladores
Aunque inicialmente todos los microcontroladores adoptaron la arquitectura
clásica de Von Neumann, en el momento presente se impone la arquitectura Harvard.
La arquitectura de Von Neumann se caracteriza por disponer de una sola memoria
principal donde se almacenan datos e instrucciones de forma indistinta. A dicha
memoria se accede a través de un sistema de buses único (direcciones, datos y control).
La arquitectura Harvard dispone de dos memorias independientes una, que
contiene sólo instrucciones y otra, sólo datos. Ambas disponen de sus respectivos
sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o
34
escritura) simultáneamente en ambas memorias. Los microcontroladores PIC responden
a la arquitectura Harvard.
Herramientas para el desarrollo de aplicaciones con microcontroladores
Uno de los factores que más importancia tiene a la hora de seleccionar un
microcontrolador entre todos los demás es el soporte tanto software como hardware de
que dispone. Un buen conjunto de herramientas de desarrollo puede ser decisivo en la
elección, ya que pueden suponer una ayuda inestimable en el desarrollo del proyecto.
S
O
D
VA
R
E
S
Las principales herramientas de ayuda al desarrollo de sistemas basados en
microcontroladores son:
E
R
S
HO
EC
R
E
D
Desarrollo del software:
Ensamblador. La programación en lenguaje ensamblador puede resultar un
tanto ardua para el principiante, pero permite desarrollar programas muy eficientes, ya
que otorga al programador el dominio absoluto del sistema. Los fabricantes suelen
proporcionar el programa ensamblador de forma gratuita y en cualquier caso siempre se
puede encontrar una versión gratuita para los microcontroladores más populares.
Compilador. La programación en un lenguaje de alto nivel (como el C ó el
Pascal) permite disminuir el tiempo de desarrollo de un producto. No obstante, si no se
programa con cuidado, el código resultante puede ser mucho más ineficiente que el
programado en ensamblador. Las versiones más potentes suelen ser muy caras, aunque
para los microcontroladores más populares pueden encontrarse versiones demo
limitadas e incluso compiladores gratuitos.
Depuración: debido a que los microcontroladores van a controlar dispositivos
físicos, los desarrolladores necesitan herramientas que les permitan comprobar el buen
funcionamiento del microcontrolador cuando es conectado al resto de circuitos.
Simulador. Son capaces de ejecutar en un PC programas realizados para el
microcontrolador. Los simuladores permiten tener un control absoluto sobre la
ejecución de un programa, siendo ideales para la depuración de los mismos. Su gran
inconveniente es que es difícil simular la entrada y salida de datos del microcontrolador.
Tampoco cuentan con los posibles ruidos en las entradas, pero, al menos, permiten el
35
paso físico de la implementación de un modo más seguro y menos costoso, puesto que
ahorraremos en grabaciones de chips para la prueba in-situ.
Emuladores en circuito. Se trata de un instrumento que se coloca entre el PC
anfitrión y el zócalo de la tarjeta de circuito impreso donde se alojará el
microcontrolador definitivo. El programa es ejecutado desde el PC, pero para la tarjeta
de aplicación es como si lo hiciese el mismo microcontrolador que luego irá en el
zócalo. Presenta en pantalla toda la información tal y como luego sucederá cuando se
coloque la cápsula.
Definición de términos básicos
E
R
S
HO
EC
R
E
D
Microprogramación
S
O
D
VA
R
E
S
La microprogramación es una característica importante y esencial de casi todas
las arquítecturas CISC.
Como por ejemplo:
Intel 8086, 8088, 80286, 80386, 80486.
Motorola 68000, 68010, 68020, 68030, 6840.
La microprogramación significa que cada instrucción de máquina es interpretada
por un microprograma localizado en una memoria en el circuito integrado del
procesador.
Software
Elementos funcionales no físicos que son necesarios para el funcionamiento del
ordenador (instrucciones de uso, programas, etc.).
Hardware
Concepto general usado para denominar a todos aquellos componentes
mecánicos, magnéticos, eléctricos y electrónicos de un sistema informático.
36
Puertos
Son puntos de conexión en la parte exterior del chasis de la computadora a los
que se conectan algunos canales. El puerto permite una conexión directa con el bus
eléctrico común de la PC. los puertos pueden ser:
•
Puertos series: Permiten la transmisión en serie de datos, un bit a la vez.
Este tipo de puertos permiten una interfaz con impresoras y módems de
baja velocidad.
•
Puertos paralelos: Permiten la transmisión paralela de datos, es decir que
S
O
D
VA
R
E
magnética de respaldo y otras computadoras.
S
E
R
OS
H
C
RE
E
D
Comunicación serial síncrona:
se transmiten varios bits simultáneamente. Permiten la interfaz con
dispositivos tales como impresoras de alta velocidad, unidades de cinta
Comunicación síncrona es aquella en donde los dispositivos de envío y
recepción de la comunicación son sincronizados utilizando un reloj que cronometra con
precisión el tiempo que separa cada bit. Al verificar el tiempo el dispositivo receptor
puede determinar si un bit se ha perdido o si un bit extra, usualmente inducido
eléctricamente, ha sido introducido en el flujo de bits.
Base de datos
Conjunto de datos organizados para su almacenamiento en la memoria de un
ordenador o computadora, diseñado para facilitar su mantenimiento y acceso de una
forma estándar. La información se organiza en campos y registros. Un campo se refiere
a un tipo o atributo de información, y un registro, a toda la información sobre un
individuo.
SQL
Es un lenguaje estándar de comunicación con bases de datos. El hecho de que
sea estándar no quiere decir que sea idéntico para cada base de datos. En efecto,
37
determinadas bases de datos implementan funciones específicas que no tienen
necesariamente que funcionar en otras.
Script
Un script es el código que puede ejecutarse en cliente (scripts del lado del
cliente) o en el servidor (scripts del lado del servidor) embebido en código HTML.
HTML (HyperText Markup Language)
S
O
D
VA
R
documentos que circulan en la World Wide Web
(WWW).
Los documentos HTML
E
S
E
R
contienen dos tipos de información:
OlaSque se muestra en la pantalla (texto, imágenes...)
H
C
E
y los códigos (tagsR
DE o etiquetas), transparentes al usuario, que indican cómo se debe
Lenguaje de marcas de hipertexto. En informática, formato estándar de los
mostrar esa información.
PHP
Es un lenguaje de scripting server-side. Se trata de un lenguaje "embeeded" en
las páginas que lo incluyen, por citar un ejemplo, el lenguaje Javascript. La principal
diferencia es que el PHP lo ejecuta en el servidor en lugar de en el cliente directamente.
Por lo tanto, no se necesitan compatibilidades particulares o estándar definidos por otros
(como el ejemplo más clásico del Javascript).
Mysql
Es una base de datos cliente/servidor, lo cual quiere decir que tenemos un server
que se ejecuta en segundo plano, a la escucha de las peticiones del programa cliente. En
mysql, el servidor es mysqld y el cliente, mysql.
Apache
Es un servidor http dedicado a publicar información (en formato HTML) en una
intranet o en Internet, realizando esta tarea por medio de el protocolo de transferencia
38
de hipertexto (HTTP), la WEB funciona básicamente por medio de peticiones y
respuestas, es decir, el navegador solicita información enviando una dirección URL a un
servidor, el cual, responde enviando una página en código HTML (Hipertext Markup
Languaje).
Multi-Threads (Programación Multi-Hilos)
Un thread es una secuencia de instrucciones ejecutadas dentro del contexto de un
proceso. Cuenta con su propio contador de programa (PC) así como con un stack para
S
O
D
A
V
R
E
instrucciones del proceso y casi todos los datos.S
Los ambientes multithreads permiten
E
R
S general de un solo proceso.
que varios threads residan dentro O
del contexto
H
C
E
DER
llevar un control de variables locales y direcciones de regreso en las llamadas a
funciones. Los threads se ejecutan independiente y concurrentemente; comparten
Circuitos integrados
Los circuitos integrados, también conocidos como microchips o chips, son
circuitos electrónicos complejos formados por componentes extremadamente pequeños
formados en una única pieza plana de poco espesor de un material conocido como
semiconductor.
Semiconductor
Todos los circuitos integrados se fabrican con semiconductores, sustancias cuya
capacidad de conducir la electricidad es intermedia entre la de un conductor y la de un
no conductor o aislante. El silicio es el material semiconductor más habitual.
CPU (Unidad Central de Procesamiento)
Es en sí en cerebro, el cual se compone a su vez de Unidad Aritmética, Lógica y
de control. Esta unidad trabaja en base a un reloj maestro que coordina la ejecución de
todas las operaciones que realiza el microprocesador.
39
La unidad fundamental de trabajo de este reloj es la cantidad de instrucciones
que el microprocesador puede ejecutar en un segundo. Así uno de 12 Mhz. puede
realizar 12 millones de ciclos por segundo.
Memoria
Circuitos que permiten almacenar y recuperar la información. En un sentido más
amplio, puede referirse también a sistemas externos de almacenamiento, como las
unidades de disco o de cinta. Por lo general se refiere sólo al semiconductor rápido de
S
O
D
VA
R
E
S
almacenaje (RAM) conectado directamente al procesador.
E
R
S
HO
EC
R
E
D
Memoria RAM (Random Access Memory)
Memoria basada en semiconductores que puede ser leída y escrita por el
microprocesador u otros dispositivos de hardware tantas veces como se quiera. Es una
memoria de almacenamiento temporal, donde el microprocesador coloca las
aplicaciones que ejecutan el usuario y otra información necesaria para el control interno
de tareas; su contenido desaparece cuando se apaga el ordenador o computadora, de ahí
que los datos que se quieran conservar a largo plazo se tengan que almacenar en los
discos.
Memoria ROM (Read Only Memory)
Memoria basada en semiconductores que contiene instrucciones o datos que se
pueden leer pero no modificar. En las computadoras IBM PC y compatibles, las
memorias ROM suelen contener el software necesario para el funcionamiento del
sistema y permanece aunque se apague el ordenador; este contenido se establece cuando
se fabrican.
Memoria EPROM (Erasable Programmable Read Only Memory)
Son chips de memoria que se programan después de su fabricación. Son un buen
método para que los fabricantes de hardware inserten códigos variables o que cambian
40
constantemente en un prototipo, en aquellos casos en los que producir gran cantidad de
chips PROM resultaría prohibitivo. Los chips EPROM se diferencian de los PROM por
el hecho de que pueden borrarse por lo general, retirando una cubierta protectora de la
parte superior del chip y exponiendo el material semiconductor a radiación ultravioleta,
después de lo cual pueden reprogramarse.
Memoria EEPROM (EEPROM (Electrically Erasable Programmable ReadOnly Memory)
S
O
D
VA
R
E
S
Memoria de lectura solamente borrable y programable eléctricamente al nivel de
bytes.
E
R
S
HO
EC
R
E
D
Memoria FLASH
Chip de memoria no volátil —su contenido permanece aunque el aparato se
desconecte de la corriente—, que se puede reescribir. Se puede borrar y reprogramar en
unidades de memoria llamadas bloques, cuyo tamaño puede ir desde los 512 bytes hasta
los 256 KB.
ALU (Unidad Lógica Aritmética)
Es la Unidad que efectúa cálculos con números y toma decisiones lógicas.
Timestamp
En informática se utiliza el vocablo timestamp (proveniente del mundo Unix)
como una forma genérica de designar el tiempo cronológico de forma completa; fecha;
hora; minutos y segundos.
41
Sistema de Variables e Indicadores
- Programa simulador de surtidores de gasolina.
- Sistema de monitoreo remoto.
Definición operacional de las Variables
S
O
D
Programa simulador de surtidores de gasolina. RVA
SE
E
R
• Definición
OS
H
C
E
Es un programa
DER que se encarga de generar el comportamiento de una estación
•
Variable independiente
de gasolina
•
Operacionalización
Esta variable será medida con la realización constantes de diversas pruebas para
corroborar resultados que arroja el simulador construido con respecto a lo que genera
una maquina surtidora de gasolina.
o Indicadores
Octanajes de gasolina
Maquinas Surtidoras
Salida y Entrada de Vehículos
•
Variable Dependiente
Sistema de monitoreo remoto.
42
•
Definición
Es un conjunto de módulos que se encarga de la obtención de la data de los
surtidores generados por el simulador mediante un protocolo de comunicaciones, para
su registro y monitoreo remoto.
•
Operacionalización
Esta variable será medida con la realización constante de diversas pruebas para
corroborar resultados que toma el sistema de monitoreo simultáneamente con el
S
O
D
VA
R
E
S
sometimiento a prueba de la variable independiente, anteriormente señalada.
E
R
S
HO
EC
R
E
D
Indicadores
Protocolo de comunicaciones
Recolección de datos generados por el simulador
Registro de datos al servidor
Eficiencia y rapidez
CAPÍTULO III
Marco Metodológico
1.- Tipo y nivel de investigación
El presente estudio es un tipo de investigación descriptiva, que buscan
especificar las propiedades, las características y los perfiles importantes de personas,
grupos, comunidades o cualquier otro fenómeno que vaya a ser sometido a análisis,
S
O
D
VA
R
E
S
según lo planteado por Danhke.
E
R
S
Los estudios descriptivos
HOpretenden medir o recoger información de manera
C
E
independiente oEconjunta
D R sobre los conceptos o las variables a las que se refieren.
También pueden integrar las mediciones o información de cada una de dichas variables
o conceptos para decir cómo es y cómo se manifiesta el fenómeno de interés.
Los estudios descriptivos se centran en recolectar datos que muestren un evento,
una comunidad, un fenómeno, hecho, contexto o situación que ocurre (para los
investigadores cuantitativos: medir con la mayor precisión posible). Este es su valor
máximo. Los estudios descriptivos pueden ofrecer la posibilidad de predicciones o
relaciones aunque sean poco elaboradas. Por ejemplo, un analista de opinión publica
basándose en datos descriptivos obtenidos en una encuesta llevada a cabo entre todos
los sectores de la población de futuros votantes, para determinada elección, intenta
predecir probabilísticamente, qué candidato triunfara en la elección. En el estudio de
Estaciones de Servicio se recolecto la información necesaria, como la cantidad de
automóviles por hora, la cantidad de gasolina por automóvil, y el tiempo que toma cada
uno de ellos para surtirse de gasolina y poder predecir el comportamiento real de una
estación de servicio por medio de estudios probabilísticos.
43
44
2.- Población y muestra.
Población
La Población es todo conjunto de elementos, finito o infinito, definido por una o
más características, de las que gozan todos los elementos que lo componen, y sólo ellos.
En muestreo se entiende por población a la totalidad del universo que interesa
considerar, y que es necesario que esté bien definido para que se sepa en todo momento
que elementos lo componen. No obstante, cuando se realiza un trabajo puntual,
S
O
D
quieren extrapolar los resultados, y población estudiada:
conjunto de elementos
VA
R
E
S
accesibles en dicho estudio.
E
R
OSpor todas las estaciones de servicio de gasolina
H
C
La Población está
conformada
E
R
E
D
que utilizan las máquinas surtidoras TOKHEIM PREMIER B, localizados en el
conviene distinguir entre población teórica: conjunto de elementos a los cuales se
municipio Maracaibo, estado Zulia, Venezuela.
Muestra
En todas las ocasiones en que no es posible o conveniente realizar un censo, lo
que se hace es trabajar con una muestra, entendiendo por tal una parte representativa de
la población. Para que una muestra sea representativa, y por lo tanto útil, debe de
reflejar las similitudes y diferencias encontradas en la población, ejemplificar las
características de la misma.
Cuando decimos que una muestra es representativa indicamos que reúne
aproximadamente las características de la población que son importantes para la
investigación.
La Muestra está constituida por la estación de servicio de gasolina BP
D’Empaire, la cual emplea el tipo de máquina surtidora mencionada anteriormente.
45
3.- Técnicas y recolección de datos.
Como procedimiento de recolección de información acerca de las
variables estudiadas, se siguieron los siguientes pasos:
Se evaluaron las distintas maneras de obtención de datos necesarios para
efectuar una adecuada telemetría arrojada por la máquina surtidora, con el fin de
determinar la forma óptima de este tipo de obtención en cuanto a seguridad, efectividad,
entre otros.
S
O
D
surtidor, opción eliminada debido a la imprecisión arrojadaV
porA
el tipo de muestreo que
R
E
Ses análogo y no digital.
puede implementarse sobre este mecanismo,
elE
cual
R
OporSestudiar la captura de datos a partir de el circuito
H
C
Por lo consiguiente,
se
optó
E
R
E
D
impreso de los dispensadores de gasolina, donde se consiguió una manera más eficiente
Se estudió la obtención de la data por medio del odómetro instalado en el
y segura de captura, que consiste en tomar los pulsos generados por el dispensador
desde el circuito impreso mismo, de manera tal de lograr registrar la cantidad precisa de
litros de gasolina surtidos digitalmente.
A continuación se muestra los diagramas esquemáticos de los circuitos
esquemáticos que sirven de soporte a la captura de información en este tipo de
surtidores en particular.
46
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
También, en siguiente esquema, se puede observar la descripción de Tarjeta Madre de
Tockheim Premier B&C series dispensers, de donde se toman los datos digitales
directamente de los Jacks, J3, J4, J11 y J12 respectivamente, dependiendo del tipo de
47
producto seleccionado por el operador del surtidor y de ahí obtener los datos digitales
representativos del consumo.
EC
R
E
D
E
R
S
HO
S
O
D
VA
R
E
S
48
La referencia de pulsos por unidad de despacho, se muestra en la tabla de referencia
siguiente:
Dado que los dispensadores utilizados son los Tockheim Premier C, se empleará
S
O
D
VA
R
E
S
la equivalencia de un litro equivale a 100 pulsos en el sistema métrico de medición.
E
R
S
HO
C
E
R
E
4.- Metodología
D del diseño.
Para el desarrollo del estudio se ubican una serie de pasos o fases lo cuales no
pertenecen a un autor en especifico, sino que se diseñó las necesidades que requiere el
sistema para su realización. Para la implementación de las alternativas mas viables se
realizo un estudio detallado del diseño del sistema de información, una vez establecida
las conclusiones de dicho estudio se inicia la construcción y programación del hardware
necesario que permita la demostración del funcionamiento del mismo. En resumen se
puede decir que la metodología de los autores consta de las siguientes etapas:
Estudio de las posibilidades tecnológicas, económicas y de recursos
humanos disponibles: Se debe estudiar la factibilidad tanto económica como
tecnológica, y de recursos humanos disponibles para obtener una visión
general y precisa del entorno de la situación o problema a resolver.
Estudio técnico de las maquinas surtidoras de gasolina: Consiste en
describir el funcionamiento general de las maquinas surtidoras concretando
necesidades y características mediante el esclarecimiento de las bases
teóricas y conceptuales, y por medio del asesoramiento de personas
involucradas con el área.
49
Recopilación del material del funcionamiento técnico de las maquinas
surtidoras: La recopilación de de la información de los surtidores utilizados
como muestra se facilito por personas calificadas que trabajan directamente
con estas maquinas en estaciones de servicio y otra parte importante del
material recopilado es información técnica obtenido del sitio Web de la
empresa que diseña dichos surtidores.
S
O
D
A
V
R
E
necesarios para la realización del sistema.
S
E
R
OS
H
C
E
R
E
D
Análisis de la información de las maquinas surtidoras: El propósito de este
Filtrado de la información de las maquinas surtidoras: Después de la
recopilación de la información, se selecciona solo los datos de relevancia
proceso es conseguir la especificación detallada del sistema de información,
a través de modelos que cubran las necesidades de información de los
usuarios para los que se desarrollará el sistema de información y que serán la
entrada para el proceso de Diseño del Sistema de Información.
Captura de la información de las maquinas surtidoras: El propósito de este
proceso es diseñar e implementar un método de obtención de los datos
generados por la maquina surtidora al momento de haber ocurrido una venta,
para su posterior transmisión.
Análisis de los posibles medios de transmisión a utilizar: Se observan los
diferentes medios de transmisión que pueden utilizarse para la recolección de
la información.
50
Selección del medio de transmisión a utilizar: en este proceso después de
haber analizado todos los métodos de transmisión se selecciona el medio
basándose es factores de seguridad y aspectos económicos.
Diseño e Implementación del sistema de recolección de datos: Este proceso
consta en diseñar el hardware que registre los datos transmitidos
provenientes de todos los surtidores para su posterior envió al servidor.
S
O
D
de recolección de datos y el servidor: En esta etapa
VAse estudian las diversas
R
E
S de comunicaciones asegure el la
necesidades para diseñar un R
protocolo
E
S
integridad de laC
data
alO
ocurrir dificultades de diferentes índoles.
H
E
DER
Estudio para el diseño de un protocolo de comunicación entre el sistema
Diseño de protocolo de comunicaciones: A partir del estudio de las
necesidades
obtenidas
anteriormente
se
diseña
un
protocolo
de
comunicaciones entre el hardware recolector de datos y el servidor.
Desarrollo de aplicación monitor para el servidor: Este software esta
encargado del monitoreo de la existencia de ventas en el hardware, así como
la implementación del protocolo de comunicaciones seleccionado para
registrar las ventas en la base de datos.
Desarrollo de aplicación Web: En esta etapa se desarrolla una aplicación
Web para el monitoreo de las ventas de todos los surtidores por Internet.
Pruebas y análisis de los resultados obtenidos: En esta etapa se analiza los
resultados obtenidos de la implementación realizada. El Sistema se someterá
a las Pruebas de Implementación con la participación del usuario de
operación cuya responsabilidad, entre otros aspectos, es comprobar el
comportamiento del sistema bajo las condiciones más extremas. También se
51
someterá a las Pruebas de Aceptación cuya ejecución es responsabilidad del
usuario final. En este proceso se elabora el plan de mantenimiento del
sistema de forma que el responsable del mantenimiento conozca el sistema
antes de que éste pase a producción. También se establece el acuerdo de
nivel de servicio requerido una vez que se inicie la producción. El acuerdo
de nivel de servicio hace referencia a servicios de gestión de operaciones, de
soporte a usuarios y al nivel con el que se prestarán dichos servicios.
EC
R
E
D
E
R
S
HO
S
O
D
VA
R
E
S
CAPÍTULO IV
Análisis e Interpretación de los Resultados
Con la finalidad de cumplir el objetivo de describir los análisis y técnicas
implementadas que se empleen para desarrollar un sistema prototipo de monitoreo
remoto del consumo de gasolina en estaciones de servicios, a continuación se realiza
una descripción de la implementación de la metodología propuesta en el capítulo III de
la presente tesis.
S
O
D
A continuación se describe el sistema actual de la contabilización
de ventas de
VA
R
E
S
gasolina por turno en estaciones de servicios:
E
R
S
O
H
C
Como primer proceso
del
sistema
actual se encuentra el inicio de turno en el cual
E
R
E
el operador D
de isla notifica al encargado o gerente la apertura de la isla donde se va a
1.- Análisis del Sistema Actual
surtir gasolina. Durante el periodo de su turno, esta dado el segundo proceso que es el
surtido de gasolina. Al momento de contabilizar las ventas el operador de isla junto con
el encargado de la estación de servicio realizan la lectura del odómetro y luego de esto,
se compara con la lectura del turno anterior para totalizar la cantidad de gasolina
vendida en el respectivo turno.
2.- Análisis del Sistema Propuesto
Siguiendo la metodología planteada en el capítulo III tenemos las siguientes
fases del modelo solución del prototipo.
1) Estudio técnico de las maquinas surtidoras de gasolina.
2) Captura de la información de las maquinas surtidoras.
3) Transmisión de la Información
4) Sistema de recepción de datos.
5) Diseño de protocolo de comunicaciones.
52
53
6) Desarrollo de aplicación monitor para el servidor.
7) Desarrollo de aplicación Web.
8) Pruebas y análisis de los resultados obtenidos.
En la primera fase se analizo los posibles medios para la captura de datos,
derivando que existen 2 posibilidades técnicas de extraer datos de la maquina surtidora
las cuales son el odómetro y el pulser de las bombas electromecánicas. A continuación
S
O
D
VA
R
E
S
se presenta un cuadro comparativo entre estas dos opciones:
E
R
S
PULSERHO
C
E
R
E
Señal digital
Ddel motherboard
ODOMETRO
Movimiento mecánico
100 pulsos por litro según especificación de
Conversión de vueltas mecánicos
manual técnico
para obtención de pulsos eléctrico
Está direccionado por dispensador
Está direccionado por dispensador
De este análisis se determinó que la manera mas eficiente de capturar los datos
generados por este surtidor es la de tomar esta señales directamente de la tarjeta madre
ya que de utilizar el odómetro se necesitaría de un hardware aparte para convertir la
señal analógica a digital que pueda acarrear con perdida de datos (señales referenciadas
en el capítulo III). Con este estudio se completo el primer objetivo de esta investigación.
Por motivos de seguridad y la dificultad de realizar pruebas frecuentemente en
sitio con las maquinas surtidoras debido que existen riesgos de ignición en el área de
surtido de gasolina, se desarrolló un simulador que genera el comportamiento eléctrico
necesario para capturar los datos específicos de una venta.
Para la ejecución de la segunda fase, la captura de la información de las
maquinas surtidoras, se desarrolló un sistema simulador hardware/software el cual se
describe a continuación.
54
Simulador
El Simulador esta compuesto por un computador con una aplicación que se
encarga de generar el comportamiento eléctrico del modelo de maquina surtidora
utilizada en la muestra. Esto lo hace con ayuda de un hardware con la función de
multiplexar las señales digitales que genera el simulador, teniendo así como resultado
S
O
D
VA
R
E
S
las señales eléctricas necesarias para poder capturar ventas.
E
R
S
HO
EC
R
E
D
Al ser este un sistema prototipo, se desarrollo dicho simulador que genera datos
de manera similar a estos surtidores generando por cada surtidor activo 100 pulsos por
litro a una frecuencia mucho mayor de un surtidor real para así demostrar y asegurar el
correcto funcionamiento del registro de ventas.
Este simulador es una aplicación desarrollada en Delphi 7 utilizando una librería
para controlar el puerto paralelo y generar dichos pulsos eléctricos. La razón de la
escogencia de esta herramienta de desarrollo es que el programador es totalmente
independiente de las particularidades de Windows, tales como manejadores (Handlers),
punteros y funciones del API de Windows (Application Programming Interface). La
programación se realiza con los cómodos componentes de Delphi y no con las
complejas llamadas al sistema de Windows. Esto simplifica enormemente la hasta ahora
poco clara programación bajo Windows.
El simulador genera 8 surtidores (4 islas) el cual tiene 2 productos que son
gasolina con plomo y sin plomo. Este simulador implementa el comportamiento de 2
señales eléctricas por producto que tiene el surtidor, según el manual de la tarjeta
principal del modelo estudiado. El puerto escogido para utilizarse en la generación de
estas señales es el puerto paralelo, por la cantidad de pines y la velocidad de respuesta
que tiene este.
55
De las especificaciones del puerto paralelo, se emplean los siguientes pines para
ejecutar funciones requeridas para la correcta simulación de la estación de servicio al
prototipo planteado.
Cada surtidor tiene 2 dispensadores y la isla tiene 2 surtidores. Como el
simulador genera 4 islas, entonces estos dispensadores se mapean en direcciones desde
el 0000 hasta el 1111 usando 4 pines, del pin5 al pin2. El Pulser es representado por el
S
O
D
VA
R
E
S
pin6. Esta señal cuando está multiplexada por el hardware se utiliza para el conteo de
pulsos por el hardware de captura y el Handle indica el inicio y fin de venta, es
E
R
S
HO
representada por el pin7.
EC
R
E
D
Son 16 dispensadores de gasolina, la cual cada uno de ellos tiene 2 señales
eléctricas para simular que son el pulser y handle, se necesitó desarrollar un programa
en un microcontrolador PIC que hace la función de un multiplexor. La principal función
de esta es registrar el estado de cada una de estas señales eléctricas de cada producto.
Cada dispensador, representado por una dirección del pin5 al pin2, sirve al multiplexor
para direccionar el estado de un dispensador en específico en ese momento (Pin06Pulser y Pin07-Handle), mediante el Clock (Pin08). Para demostrar la eficiencia del
registro de ventas, la velocidad del comportamiento eléctrico simulado es mucho mayor
al real. Para multiplexar estas señales a tan alta velocidad, se eligió un microcontrolador
56
PIC18F458 y un PIC18F248, que son capaces de multiplicar la frecuencia de oscilación
de entrada por 4, trabajando a un máximo de 40 MHZ.
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
El desarrollo de este simulador esta orientado a objetos, dado por la naturaleza
del problema. Para simular varios surtidores generando pulsos al mismo tiempo se
utilizo la técnica de programación Multi-Threading. Cada producto del surtidor es una
instancia de una clase dispensador, que a su vez hereda métodos de la clase TThread de
Delphi. Esta clase dispensador es la responsable de la existencia de los objetos que
genera la data a través del puerto.
Dado que lo más importante es asegurar la integridad de la data generada por el
simulador, al usar la técnica de programación multi-threading se debió tomar en cuenta
algunas problemáticas. Antes de enviar el clock para que el multiplexor registre el pulso
y el handling del dispensador indicado por la dirección se deben preparar todas estas
señales en varias líneas de instrucción asegurándose de que todos estos comandos se
57
ejecuten en el thread principal del programa simulador, y así no todos los dispensadores
estarían generando estas señales al mismo tiempo ya que habría colisión de data en el
puerto paralelo.
La clase surtidor tiene 2 propiedades principales, que son dos objetos
dispensadores que representan los 2 productos de gasolina. La clase surtidor tiene un
método especial que determina si el surtidor esta ocupado en ese momento, o sea, no se
puede generar pulsos de los 2 productos al mismo tiempo en un mismo surtidor. Al
generar ventas de una forma automática, si se intenta surtir gasolina en un surtidor que
S
O
D
A que el simulador
Vnecesita
R
esa clase. Para que exista un auto surtimiento aleatorio,
se
E
ES
R
llame a la subrutina de surtir gasolinaS
en un
surtidor en específico en rangos de tiempo
HO
C
random.
E
DER
esta ocupado en ese momento, el simulador no dejara que esto ocurra por ese método de
Para esto se usa el objeto en delphi que se llama TTimer que consiste en generar
un evento en un intervalo de tiempo especificado, que el simulador, es generado
aleatoriamente. Así, se tiene un auto surtimiento ejecutando esta subrutina en tiempos
aleatorios.
Con el desarrollo de este simulador se completo el segundo objetivo de esta
investigación. Con el desarrollo del simulador, se continúa con el diseño de un sistema
digital para la Captura de la Información. A continuación se presenta un diagrama
explicando el funcionamiento del simulador:
58
EC
R
E
D
E
R
S
HO
S
O
D
VA
R
E
S
59
Captura de la Información
Para obtener una Captura integra de la información se necesito un hardware
capaz de registrar conteo de pulsos externos, uno por cada producto de gasolina, además
de ser capaz de manejar interrupciones externas para adquirir las transacciones de
ventas y al mismo tiempo poder transmitir una venta en cola. Asimismo Para el respaldo
de la data en caso de contingencias o fallas eléctricas se necesito de un hardware con
capacidad de memoria EEPROM para respaldo de ventas.
S
O
D
Con todas estas características y necesidades para
VelAhardware colector, se
R
E
seleccionó el microcontrolador PIC16F876A
ya S
que el mismo posee dos timers para el
E
R
S
O contarán respectivamente los pulsos por producto
conteo de pulsos externosC
losH
cuales
E
ERde esto este microcontrolador es realmente efectivo para esta
de gasolina,D
además
aplicación debido a su tamaño y costo.
Se utilizaron las interrupciones de este microcontrolador para incrementar los
litros de gasolina contados y el cierre de venta del surtidor dado por la señal de handle.
Esta venta es guardada de la memoria RAM a la EEPROM, ya que así es posible seguir
con el conteo de otra venta y enviar de ventas anteriores en caso de fallas eléctricas,
debido a que esta data puede permanecer el la memoria EEPROM por un periodo de
hasta 40 años según especificaciones eléctricas del microcontrolador seleccionado.
Cada venta esta constituida por 4 bytes, tres bytes de cantidad de gasolina y un
byte de identificación de isla y producto. Con la ejecución de este proceso se completo
el tercer objetivo de esta investigación y da paso al inicio de la siguiente fase de
transmisión de la información.
A continuación se presenta el diagrama de conexión eléctrica del PIC16F876A,
utilizado para el conteo de pulsos externos:
60
EC
R
E
D
E
R
S
HO
S
O
D
VA
R
E
S
61
Transmisión de la Información
Para el diseño de este sistema, se ha tenido como una premisa importante el
asegurar la integridad de la data en todo momento, por lo cual se decidió darle más
importancia a la atención de las ventas. Por ello, para el conteo de pulsos, que
representan las ventas, se asignó la funcionalidad de las interrupciones de los
microcontroladores.
Quedando así, como tarea secundaria y no menos importante, la de establecer la
S
O
D
A
V
R
E
comunicaciones en el cual están manejados por un
Sdispositivo maestro, de manera que
E
R
S en la cual cada uno de los contadores de
se diseño una comunicación serial
Osíncrona
H
C
surtidor es el que
RE los pulsos y datos de su información, para así poder dejar en
Ecanaliza
D
“stand by” la comunicación mientras se esta atendiendo una venta por medio de las
comunicación entre el hardware colector y receptor. Estos microcontroladores al tener
su enfoque principal en la captura de ventas no pueden depender de un bus de
interrupciones, sin perder información de datos entre el esclavo y el maestro de la
comunicación serial.
Para la transmisión se utilizó una comunicación serial de envío de datos bit a bit
hasta completar el byte, con ello se logra la continuidad de la data de todos los
surtidores al mismo tiempo. Además, se agrego a esta comunicación una señal para cada
contador la cual indica que tiene ventas acumuladas en la memoria, así el
microcontrolador encargado de recibir dichas ventas, solo pedirá datos a los que así lo
requieran.
En esta transmisión se envían los 4 bytes correspondientes al tipo de gasolina y
el byte de identificación del surtidor. Además, se utilizaron dos microcontroladores
PIC16F876A para cumplir con las funciones de monitoreo de la señales indicativas de
requerimiento
de
transmisión
de
ventas
realizadas
en
cada
uno
de
los
microcontroladores de captura de las ventas, así como la recepción de los bytes
contentivos de la información correspondientes en cada microcontrolador.
62
Recepción de la Información
En caso de fallas por parte del servidor en un tiempo prolongado, es importante
que las ventas recibidas queden registradas con la fecha específica y no depender del
mismo para el registro de fecha, si no que esta fecha sea calculada desde el mismo
hardware. La fecha actual debe configurase desde el hardware por medio de una interfaz
con el usuario.
S
O
D
A de 1970, se calculan
una fecha Unix determinada “hora cero” que es el 1ero deV
Enero
R
E
S
los segundos transcurridos desde la mismaR
hasta
la fecha actual. Este número calculado
E
S
O el cual representa el tiempo cronológico en forma
es denominado TimeStamp
deH
Unix,
C
E
R minutos y segundos.
completa; fecha;
DEhora;
Teniendo esta fecha y además una fecha de predeterminada de inicio la cual es
Entonces con estas necesidades como premisas para el diseño del hardware
receptor de información, se tiene que los requerimientos de procesamiento deben ser
mayores que el hardware de captura, debido a que
los mismos deben poseer
instrucciones nativas de multiplicación de 8 bits para el cálculo de la fecha y hora desde
un punto inicial y prioridades en niveles de interrupciones para el envío del TimeStamp
vía serial, y asimismo seguir con el conteo de los segundos de la hora, por lo que se
seleccionó un PIC18F248. El TimeStamp consta de 4 bytes de datos, con lo que se
asegura más de 50 años en segundos para el registro.
Para el registro de la venta se necesita también gran capacidad de memoria, por
lo que se seleccionó el microcontrolador PIC18F458 para grabar la información de las
ventas en la memoria flash.
Al momento de recibir una venta este microcontrolador pide solicitud de
TimeStamp al microcontrolador PIC18F248, y teniendo la gasolina registrada y el
TimeStamp generado estos se concatenan y conforma así la venta que se guarda en la
memoria Flash del microcontrolador 18f458 para luego ser enviado al servidor.
63
A continuación se muestran los diagramas de conexión eléctrica del control
central y TimeStamp:
EC
R
E
D
E
R
S
HO
S
O
D
VA
R
E
S
64
EC
R
E
D
E
R
S
HO
S
O
D
VA
R
E
S
65
Entonces el modelo esquemático del hardware es el siguiente:
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Con la ejecución de este proceso se completo el cuarto objetivo de esta
investigación.
Protocolo de comunicación entre el sistema de recolección de datos y el
servidor
La información a transmitir va a ser enviada al servidor por medio del puerto
paralelo, estos datos serán capturados por una aplicación en Delphi usando una librería
dinámica para el control de dicho puerto. El motivo de la selección de este compilador
Delphi es debido a que es una potente herramienta de desarrollo de programas que
permite la creación de aplicaciones para sistemas operativos Windows, además de esto
66
es posible acceder de forma muy cómoda a servidores de bases de datos de otros
sistemas (por ejemplo UNIX) por medio del SQL (Structured Query Language) que
constituye un estándar de lenguaje de uso general para consultar y modificar datos
administrados por servidores especiales de bases de datos como Oracle, Sybase,
MySQL, etc.
La comunicación entre el hardware recolector de ventas y el servidor se
desarrollo de la siguiente manera:
S
O
D
• El microcontrolador PIC encargado de registrar
VAlas ventas envía una
R
E
E
señal a la aplicación monitor
delS
servidor cuando el mismo tenga una
R
S
O
venta en cola
aH
transmitir.
C
E
ER
•DDicha aplicación al detectar esta señal, se establece entre el hardware y
esta aplicación un reconocimiento (Server Acknowledge).
•
El hardware envía un byte al servidor de que hubo o no Acknowledge,
para proseguir con el envío de la información ó el reinicio del proceso de
transmisión.
•
Si hubo acknowledge se envía la venta 2 veces de manera serial a la
aplicación monitor.
•
Esta aplicación compara las 2 ventas recibidas, de ser iguales se insertan
en la base de datos para el uso de la aplicación Web y luego de esto envía
al hardware un byte de control para notificar al mismo que la venta fue
satisfactoria y que puede liberar el espacio de memoria que ocupaba
dicha venta.
•
La Aplicación queda en espera de otra transacción de venta.
El diagrama de flujo de este proceso es el siguiente:
67
" " "%
" " "%
%
"
&"
' #!
#
(#$# $ " "$)
$
!"#$
% % ""
%
" " "%
%
" " "%
$
"
/'
&" % % +
% % ""
%)
S
O
D
VA
R
E
S
$ " "$ "
+" $% , "
E
R
S
HO
EC
R
E
D
%
# (*
!
% (#$#$ -'
# !#$"# +
# ".'#+
%
".'#+ +#
!
$ ""# )
!"#$ (#+# $#
% $%+#+
% $%+
$#+
""
% -' +#
$# # "%
%
/'
&" % #
"
#
"
$ #$
#
# % +# !
#
!"#$ (#+# $#
% $%+#+
% $%+
$#+
(#$# -'
+" " # +#
!
#
!"# #
+#
%+#
" " "%
" " "%
El proceso completo del registro de ventas se puede observar en el siguiente
grafico:
68
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Con la ejecución de este proceso se completaron los objetivos quinto y sexto de
esta investigación.
69
Aplicación Web
Las fases ejecutadas para el desarrollo de esta aplicación Web son las siguientes:
•
Planificación del sistema.
•
Análisis y diseño del sistema.
•
Construcción del sistema.
•
Implementación del sistema.
Fase de planificación del sistema
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
En esta fase se tuvo como objetivo principal la obtención de un marco de
referencia para el desarrollo de este sistema de información que responda a los objetivos
estratégicos de la estación de servicio. Esto se logro por diversas reuniones con gerentes
para así poder llevar a cabo el análisis, diseño y construcción del sistema. Los
principales procesos a automatizar obtenidos de las diversas reuniones fueron:
•
Monitoreo de toda la información de una forma remota.
•
Los reportes de ventas deben calcular y mostrar la sumatoria de litros de
gasolina de octanaje con plomo y sin plomo, así como la cantidad de dinero total
que se obtuvo por las ventas de gasolina.
•
La generación de dichos reportes de ventas mediante la selección de surtidores
en específico y fechas exactas.
•
Ingreso de turnos de operadores de isla al sistema, así como la generación de
dichos reportes de ventas de gasolina desde el momento en que se ingresó esta,
hasta que se cierra.
70
•
Se debe diseñar el sistema manera que existan niveles de accesos restringidos
según el tipo de usuario y obtener niveles de seguridad para el control de la data,
específicamente al modificar información.
Análisis y diseño del sistema
Ya teniendo unos objetivos planteados provenientes de la planificación del
sistema, se procedió a una identificación del entorno tecnológico. Uno de los alcances
S
O
D
A
forma remota. Por esto, en esta fase de análisis, se hace una
del entorno
Videntificación
R
E
E
tecnológico a usar y la definición de estructura
deS
datos.
R
S
O tecnológico, como premisa inicial se plantea
Hentorno
C
En la identificación
del
E
R de una forma remota, por lo tanto la solución más atractiva
DEinformación
monitorear toda
principales para el desarrollo de este sistema es el poder controlar la información de una
de realizar esto es mediante una aplicación Web.
La estructura de datos de las ventas, es de la siguiente manera:
Tanto el surtidor y la fecha exacta de venta, en conjunto, representan la clave
principal de esta tabla, ya que no se puede surtir gasolina en el mismo surtidor y a su
vez en ese mismo segundo. El surtidor es representado por un número del 1 al 8, lo cual
representan las 4 islas de la estación de servicio.
Al momento de registrar una venta en esta tabla mediante el sistema protocolo,
se realiza una consulta el precio del octanaje por litro indicado en la variable booleana
de la tabla venta. Este precio consultado, se registra en esta tabla. La tabla con los
precios de los octanajes es la siguiente, la cual es configurable mediante el sistema por
el Súper Usuario:
71
Esta es una tabla que consta de una sola fila que indica el precio de la gasolina
con plomo y sin plomo por litro.
La estructura de datos que representa los usuarios que controlan la información
S
O
D
VA
R
E
S
del sistema, es la siguiente:
E
R
S
HO
EC
R
E
D
Cada usuario del sistema debe ser único, así que como clave principal se tiene la
cedula. Para el ingreso y acceso a la información, se debió ingresar a esta tabla campos
clave y tipo de usuario. El tipo de usuario es representado por 3 números: Súper Usuario
(1), Administrador (2) y Usuario (3). EL Súper Usuario es un usuario único, y tiene la
posibilidad de controlar toda la información como agregar otros administradores,
usuarios y operadores de isla al sistema. Las únicas diferencias entre el Administrador y
el Súper Usuario es que el Administrador no puede modificar los precios de los
octanajes de la gasolina ni agregar otros administradores. Tanto como el Súper Usuario
y el Administrador, pueden ingresar nuevos operadores de isla, la estructura de datos de
esta es la siguiente:
%
"
0
#
72
Los 3 tipos de usuario, pueden ingresar turnos al sistema para la generación de
reportes en base a estas. Estos registros son para indicarle a un reporte, la hora de inicio
y fin de turno exacto, la persona encargada de ese turno y los surtidores a su nombre. La
estructura de datos de los turnos es la siguiente:
E
R
S
HO
S
O
D
VA
R
E
S
EC
R
E
D
!
#
$
%
&
'
(
)
"
"
"
"
"
"
"
"
El Id es un numero que auto incrementa el manejador de base de datos cada vez
que se inserta un turno al sistema, es decir, cada registro tiene un Id diferente. Esto es la
clave principal del Turno. Al ingresar un turno, se necesita la cedula del operador de
isla, la fecha exacta de inicio del sistema que es generada por el servidor, la fecha de
ingreso y los surtidores correspondientes a ese turno representados por 8 variables
booleanas. Toda esta información es suficiente para generar reportes de turno.
Teniendo una estructura de datos establecida, se procede al desarrollo del
sistema.
73
Construcción del sistema
Las herramientas utilizadas para el desarrollo y funcionamiento de esta
aplicación son el servidor http Apache, un manejador de base de datos MySQL y el
compilador PHP para la conexión a base de datos y cálculos del sistema por parte del
servidor. El motivo de la escogencia de estas herramientas es porque son software de
libre acceso. El servidor Apache esta encargado de recibir las peticiones del cliente y
dar respuesta a estas mismas, así como llamar al modulo PHP cuando este lo requiere.
S
O
D
A
V
R
E
sistema, desde que entra hasta que sale. Esto es
Simportante para saber que tipo de
E
R
usuario ingresó al sistema.
OS
H
C
E
DER
El sistema esta desarrollado utilizando sesiones, las sesiones son un método para
mantener variables provenientes del cliente durante toda la estadía del usuario en el
El usuario al entrar al sistema mediante su cedula y clave, se registra en la
sesión el tipo de usuario y cedula. El encargado de hacer este trabajo es PHP. Con esto
se obtienen varios niveles de seguridad y accesos restringidos con solo saber la cedula y
tipo de usuario. Cada vez que el usuario intenta ejecutar algún proceso, se consulta si
tiene permiso para hacerlo o no.
Esta aplicación Web esta dividida en 2 módulos para separar los procesos que
tiene que ver con la configuración y operación del sistema.
Modulo de configuración del Sistema
Se alimenta la base de datos con los usuarios del sistema y operadores de isla,
así como también los precios del octanaje de gasolina. Existen tres niveles de jerarquía,
74
que son el Súper Usuario, Administrador y Usuario del sistema. Esto se diseño de esta
manera para que sea un sistema multiusuario, accesos restringidos según el tipo de
usuario y obtener niveles de seguridad para el manejo de la data. El Súper Usuario tiene
acceso a la manipulación de todo el sistema, como la configuración de los precios de los
octanajes. Es la única persona que puede agregar otros Administradores del sistema.
Tanto como el Súper Usuario y los Administradores pueden alimentar la base de datos
con Usuarios del sistema y los operadores de isla que están activos en la estación de
servicio. A continuación, se muestran algunas imágenes de este modulo:
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
En este modulo del sistema, se pueden observar todos los usuarios clasificados
según tipo de usuario, mostrando información importante como su cedula, nombre y
apellido. Lo mismo sucede con los operadores de isla. Para modificar o eliminar los
datos de los usuarios u operadores de isla, se puede entrar a esa área mediante un clic a
cualquier cedula que se vea en esa lista. Al hacer esto, se observa lo siguiente:
El Súper Usuario es capaz de ver las claves de todos los administradores y
usuarios del sistema. Ni los administradores ni usuarios del sistema pueden ver la clave
de ingreso al sistema del Súper Usuario. Los administradores si pueden observar claves
de los usuarios. Esto se desarrolló de esta manera porque existen casos en donde a algún
75
usuario o administrador no recuerde su clave de ingreso, entonces alguien perteneciente
al sistema con mayor jerarquía le puede recuperar esa clave.
En este modulo, también se puede modificar los precios del octanaje de la
gasolina con plomo y sin plomo. Esto nada más lo puede hacer el Súper Usuario, ya que
son de gran importancia estos valores para el sistema que recibe las ventas del control
central. Ese sistema consulta estos precios antes de insertar la data que recibe del
control central.
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Ya teniendo un módulo para la configuración de los octanajes de gasolina y
administración de usuarios, se procede a desarrollar el módulo de operación
Modulo de Operación del Sistema
En este modulo, todos los niveles de jerarquía tienen acceso al mismo, como
generar reportes de turno y monitoreo de los turnos activos. Cuando un operador de isla
va a iniciar su tuno, se debe seleccionar el nombre de dicho operador y surtidores a
operar, registrándose la hora exacta de entrada para contabilizar ventas de dicha hora a
su nombre hasta el cierre de turno. De igual manera funciona para el cierre de turno,
donde se puede ver los operadores de isla activos y cerrar su turno correspondiente para
el registro de fecha y hora exacta de culminación de turno.
Esta aplicación tiene la capacidad de generar reportes de surtidores y operadores
activos en determinado momento para ver el total de las ventas hasta la hora exacta
donde se genero dicho reporte. También es posible generar reportes de ventas por turno
en determinada fecha. Estos requerimientos de reportes de ventas vienen dados de
diversas reuniones con gerentes de estaciones de servicios de la ciudad, los cuales se
mostraron satisfechos por la eficiencia e importancia del sistema y los reportes
76
generados por el mismo. Con el soporte de esta aplicación Web, el inicio de turno de un
operador de isla se da al ingresar la cedula de dicho operador, momento en el cual se
registra la hora exacta del inicio de turno del mismo. También se pueden generar
reportes mediante un rango de fechas específicas y surtidores, generando así todas las
ventas que se hicieron en ese lapso de tiempo de los surtidores especificados al generar
el reporte.
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Este es el formulario que se encarga de generar los reportes de ventas en un
rango de fechas y surtidores específicos. El resultado que se obtiene al generar ese tipo
de reporte es la siguiente:
77
En este reporte se puede observar el listado de todas las ventas que ocurrieron en
el rango de tiempo especificado, totalizando todos los litros con plomo y sin plomo
vendidos.
Cuando un operador de isla inicia su turno, se ingresa este mediante el siguiente
formulario:
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Mediante la selección del operador de isla y los surtidores en la que él estará
establecido para cumplir sus horas, al enviar toda esta información al servidor, se
obtiene la fecha exacta de inicio de turno. Si se intenta ingresar un operador de isla en
algún surtidor que esta actualmente activo por otro operador, el sistema mostrará un
mensaje de error diciendo que no se puede ingresar ese turno debido a esa colisión. Para
visualizar los turnos que están registrados al sistema, se pueden filtrar esta información
en el menú principal como la imagen siguiente:
Como se puede observar, se puede filtrar todos los turnos ingresados por activos,
no activos o mediante fechas especificas.
78
A continuación se presenta una imagen de un listado de turnos encontrados
buscándolos por alguna fecha en específica:
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
Al seleccionar una fecha específica en el formulario, se obtiene el listado de
turno de esa fecha. Cada turno muestra el operador de isla, la hora de inicio generado
por el servidor cuando este se ingreso, surtidores en la que ese operador estuvo
trabajando, un enlace para configurar el turno, cerrarlo en caso de que este esté activo y
ver las ventas que han transcurrido bajo la responsabilidad del operador de isla. Si el
turno está activo en ese momento, al ver las ventas, se genera un reporte desde la fecha
de inicio del turno hasta el momento donde se genero esa petición al servidor. De lo
contrario, se genera el listado de ventas desde que se ingresó el turno, hasta que se
cerró, como se puede observar en la siguiente imagen:
79
S
O
D
VA
R
E
S
E
R
S
HO
EC
R
E
D
En caso de hacer modificaciones a un turno en específico, solo el Súper Usuario
y los administradores pueden hacerlo. En el listado de turnos, al darle clic al campo
“Configurar”, es posible hacer esto.
80
Implementación del sistema
La instalación del sistema consiste en la implementación del sistema protocolo
que recibe las ventas que le envía el control central y las inserta en la base de datos
MySQL mediante el controlador ODBC, la instalación del servidor http Apache con el
modulo PHP para la ejecución de los scripts del lado del servidor y conexión a base de
datos, y la creación de un directorio virtual en el servidor donde se aloje los archivos
S
O
D
A
V
R
E
del sistema, como la carga de datos al entornoS
de operación, ingresando usuarios y
E
R
operadores de isla, se confirma que
OelSsistema protocolo reciba las ventas y las ingrese a
H
C
la base de datosE
RE rigurosas pruebas, se entrena al personal para el ingreso de
D mediante
utilizados por el sistema. Después de la instalación de todas estas herramientas en un
sistema operativo Windows, se procede a ejecutar procesos para la entrega y aceptación
turnos, generación de reportes, administración y configuración del sistema.
Con el cumplimiento de este proceso se completa el séptimo y octavo objetivo
de esta investigación.
81
CONCLUSIONES
Tomando en cuenta los resultados obtenidos de esta investigación se formulan
las siguientes conclusiones:
Se desarrolló un sistema prototipo de monitoreo remoto del consumo de gasolina
en estaciones de servicio el cual presentó características funcionales esperadas tales
S
O
D
registros para generar reportes de las ventas de manera remota.
VA
R
E
S
E
R
OS
H
C
E
Las vías deR
DE recolección de información estudiadas fueron: La transmisión de la
como el correcto registro de las ventas generadas por los surtidores y el uso de dichos
data de forma inalámbrica, la información generada desde el odómetro y finalmente la
vía escogida dentro de la investigación que fue el conteo de pulsos provenientes de la
maquina surtidora, con la que se pudo comprobar que la implementación del sistema es
viable ya que existe factibilidad técnica.
Los resultados obtenidos de la aplicación de simulación de datos generados por
una máquina surtidora fueron satisfactorios ya que se comportó de manera similar a
estas máquinas, además de esto y arrojo información con una velocidad de hasta mas de
10 veces a la velocidad normal con la que trabajan dichas máquinas.
Con la implementación del sistema de recepción y control se comprobó que el
protocolo de comunicaciones entre el sistema de recolección de datos y el control
central fue diseñado adecuadamente porque el nivel de error en la recolección de datos
fue nulo.
Con todas las pruebas realizadas durante la investigación, se observo que los
registros de venta mostrados por la aplicación Web se corresponden con los generados
por el simulador inclusive en caso de fallas por parte del servidor.
82
RECOMENDACIONES
Tomando en cuenta los resultados obtenidos de esta investigación se recomienda
lo siguiente:
•
Dado que el sistema es un prototipo se recomienda el desarrollo del
mismo de forma industrial cumpliendo con normativas de seguridad que
apliquen en este proyecto, ejemplo, Nema y UL.
S
O
D
VA de servicios.
el sistema en su implementación en otras
estaciones
R
E
S
E
R
OS
H
C
EREmemorias EEPROM seriales para ampliar la cantidad
•DUtilizar
•
Ampliar la gama de dispensadores de gasolina para hacer más atractivo
de
información a reservar en caso de contingencias en el circuito de
recepción de la información.
•
Ampliar la gama de reportes estadísticos de las ventas registradas, para
optimizar la toma de decisiones con respecto a la gerencia de la estación
de servicio y sus productos ofrecidos.
•
Desarrollar un sistema administrativo en conjunto con esta aplicación
Web, para controlar al máximo ingresos y egresos de la estación de
servicio.
•
Implementar un sistema de monitoreo del estado de los tanques de
gasolina, con sus parámetros como la temperatura, volumen, masa,
pureza del producto, entre otros, para eliminar la supervisión manual de
los mismos.
83
REFERENCIAS BIBLIOGRÁFICAS
Angulo U., José Maria e Angulo M., Ignacio (1999) Microcontroladores PIC,
diseño practico de aplicaciones. Editorial McGraw Hill.
Angulo U., José Maria , Angulo M., Ignacio y Yesa R.,Susana (2000)
Microcontroladores PIC, diseño practico de aplicaciones( Segunda Parte ). Editorial
McGraw Hill.
S
O
D
VAde Datos Volumen 1.
R
C.J., Date (1990) Introducción a los Sistemas
de
Bases
E
S
E
R
Editorial Addison-Wesley. 5ta Edición.
OS
H
C
E
DER
Hernández, Fernández y Baptista (2002). Metodología de la Investigación.
Editorial McGraw Hill. 3era Edición.
Rubio G., Francisco j., Tejedor, Jorge (2001) Creación de Sitios Web con PHP
4. Editorial McGraw Hill.
Silberchatz, Abraham (1998) Fundamentos de Bases de Datos. Editorial
McGraw Hill. 3era Edición.
Tanenbaum, Andrew (1997) Redes de Computadoras. Editorial McGraw Hill.
3era Edición.
Teixeira, Steve y Pacheco, Xavier (2000) Guía de Desarrollo Delphi 5. Editorial
Prentice Hall.
Descargar