144 CAPITULO IV. RESULTADOS DE LA INVESTIGACIÓN. 1.

Anuncio
CAPITULO IV.
RESULTADOS DE LA INVESTIGACIÓN.
1.- FASES DE LA INVESTIGACIÓN.
FASE 1. Definición de las especificaciones.
FIGURA 19
Modulo
Principal
Segundo
Modulo
Tercer
Modulo
FUENTE: RIVERA (2003)
Se desarrolló un sistema prototipo de simulador de procesos para
la medición y control de nivel, utilizando un microcontrolador PIC16F877,
como cerebro principal de la tarjeta de control del mismo. El sistema esta
formado por tres módulos ver (figura 9): el módulo principal que lo
constituye el computador (PC), el cual poseerá el softwa re de control de
todo el sistema de simulación. Mediante este software se podrá activar o
desactivar el funcionamiento de la tarjeta de control, como también se
144
145
visualizará la simulación, casi en tiempo real, del proceso de control de
nivel o llenado de un tanque.
El segundo módulo es el Interfaz de comunicación entre el PC y
el microcontrolador PIC, el cual se realiza serialmente bajo el protocolo
RS232.
Tercer módulo, Se tiene la tarjeta de control capaz de monitorear
y controlar el nivel de un tanque, utilizando un censor de ultrasonido para
la medición del mismo. Este envía una señal o nivel de tensión a la tarjeta
controladora, la cual entra en un canal de entrada convertidor análogo /
digital que posee el microcontrolador, y de acuerdo con los parámetros de
nivel (set point) escogido desde el computador la tarjeta controladora
enciende o apaga una bomba de llenado o vaciado hasta que se cumpla
con los requisitos de la simulación. La tarjeta interfaz posee una pantalla
de cristal líquido LCD para la visualización del nivel actual de la medición
del ultrasonido y si la bomba está en encendida o apagada. La
información del estado de nivel o dato censado por el ultrasonido y el
estado de la bomba de llenado se envía serialmente hacia el PC a través
del interfaz serial a una velocidad de transmisión es de 9600 bits por
segundo.
El computador recibe la información de la simulación mediante el
software desarrollado en Visual Basic (versión 6.00), éste las representa
en forma gráfica en el monitor.
El sistema recibe palabras de comando desde el computador a la
velocidad de transmisión y recepción mencionada anteriormente.
146
De acuerdo a las diferentes palabras de comando, el sistema
calcula y muestra gráficamente el estado de la simulación y de acuerdo al
nivel de llenado o vaciado escogido, envía el comando de encendido o
apagado de la bomba de llenado o vaciado.
FASE 2. Esquema general del hardware.
FIGURA 20
COMPUTADOR
MONITOR
Computador
Interfaz
MAX232
PIC16F877
BOMBA
DE
VACIADO
SENSOR
DE NIVEL
TANQUE
FUENTE: RIVERA (2003).
LCD
BOMBA
DE
LLENADO
147
Se puede notar en el diagrama de bloques funcionales, que el
módulo Principal Computador es el que controla el flujo de información
mediante un software de comunicación entre el microcontrolador
PIC16F877 y el mismo a través del módulo interfaz (MAX232), el cual es
un intermediario que controla la conversión de las señales de la
transmisión y recepción. El flujo de información el bidireccional, ya que el
computador será capaz de ordenar al PIC el comienzo y el fin de entrega
de datos del proceso de simulación y control de nivel.
Monitor:
es una pantalla donde se visualizan los diferentes
procesos de simulación en el módulo principal o PC, tanto el vaciado del
tanque como el llenado del mismo.
LCD: es una pantalla de cristal líquido por el cual se visualizarán
las etapas del proceso y la información del nivel del líquido contenido en
el tanque proveniente del circuito sensor de nivel, en el módulo de control.
Bomba de llenado: es el actuador o circuito de potencia
encargado del encendido y apagado de la bomba de llenado del tanque.
Bomba de vaciado: es igual al anterior pero con la función de
encender y apagar la bomba de vaciado del tanque.
Sensor de nivel: es un transductor detector de distancia, el cual
traduce dicha distancia, a un nivel de tensión DC, la tecnología utilizada
por este sensor es el ultrasonido.
Tanque: es el recipiente utilizado en el simulador al cual se le
medirá el nivel tanto en el proceso de llenado como en el proceso de
vaciado del mismo.
148
FASE 3. Ordinograma general del sistema.
A continuación se presenta el ordinograma general del sistema de
simulación de procesos de medición de nivel.
FIGURA 21
INICIO
1.
2.
3.
4.
MENÚ
FIJAR NIVEL
SIMULACIÓN
MANUAL
SALIR
OPCIÓN
OPCION=1
SI
SET POINT
NO
SI
OPCION=2
SIMULADOR
NO
OPCION=3
SI
NO
NO
OPCION=4
SI
FIN
FUENTE: RIVERA (2003)
MANUAL
149
El software general del sistema comienza con la iniciación de los
registros y puertos y con el despliegue del menú Principal. En este menú
se tienen 4 opciones:
-
La Opción=1 constituye la bifurcación del sistema al bloque de un
procedimiento denominado SET POINT, el cual no es más que la
rutina de fijación del nivel de referencia inicial del simulador. Al salir de
esta opción el programa retornará al menú Principal.
-
La Opción=2 es el procedimiento en el cual el sistema comienza el
proceso de simulación, en el cual se realiza la comunicación serial de
la información que fluirá a través del módulo interfaz entre el PC y el
microcontrolador. Para esta opción se visualizará en el monitor el
estado del nivel del tanque y el set point escogido por el usuario.
-
La Opción=3 es una bifurcación del sistema a modo manual, donde el
usuario tendrá la posibilidad de leer la información procedente del
sensor de nivel con solo presionar “click” un botón en el monitor.
También podrá encender o apagar la bomba desde el PC
manualmente.
-
La Opción=4 es la opción de salida del sistema .
150
FASE 4. DISEÑO DEL HARDWARE DEL SISTEMA.
Para el diseño eléctrico y electrónico se consultó las referencias de
las bibliografías de los diferentes componentes según sus fabricantes,
asegurando así la correcta utilización de los elementos y al mismo tiempo
conocer los niveles aceptables que estos puedan soportar referente a los
parámetros más importantes, como lo son el voltaje y la corriente. Se
calcularon las especificaciones de los circuitos necesarios a utilizar en
cada etapa del diseño de control, tomando en cuenta los elementos
incluidos en esta fase para la protección y buen desempeño de los
componentes.
A continuación se explica cada una de etapas y componentes del
diseño electrónico de la modulo interfaz y el módulo de control mostrado
en el anexo X2:
Modulo interfaz.
Se realiza a través del MAX232, el cual es un circuito integrado que
permite realizar la comunicación serial vía RS232, el cual está sirve de
interfaz serial con el computador. Este transforma las señales de niveles
TTL (0 y 5 VDC) a niveles RS232 (+12 y -12 VDC) respectivamente y
viceversa, de RS232 a TTL. La velocidad de transmisión y recepción es
de 9600 baudios o bits por segundo, con envío de un bit de ‘star’ o
comienzo, 8 bits de datos y un bit de ‘stop’ o parada.
El microcontrolador PIC16F877 controla la transmisión por la salida
RC6 y la recepción por la entrada RC7.
151
Módulo de control.
A continuación se explicarán por partes los diferentes circuitos que
conforman el módulo de control.
Circuito de reloj y reset del microcontrolador PIC16F877.
El circuito de reloj está formado por un cristal de 20 MHz,
utilizado para la sincronización de los ciclos de las operaciones de lectura
y escritura del Microcontrolador PIC16F877. El circuito de reset está
formado por un condensador (0.1uF electrolítico), dos resistencias, una de
10K ohmios y otra de 470 ohmios, y un diodo (1N4148). El PIC16F877
se coloca en estado de reset cuando en su entrada MCLR (master clear
reset) está a un nivel lógico “0”; situación que ocurre automáticamente
cuando se energiza el sistema, ya que el condensador está descargado o
puesto a un nivel lógico “0” a través del diodo, éste comienza a cargarse
a través de la resistencia de 10K a un nivel de tensión de 5 voltios o nivel
lógico “1”, quedando el microcontrolador listo para operar en modo
normal, hasta que sea puesto en estado de reset manualmente mediante
el pulsador que descarga al condensador a tierra. El diodo 1N4148 es un
diodo
de
conmutación
rápida,
el
cual
se
encuentra
polarizado
inversamente y su función es la de descargar al condensador hacia la
fuente en forma rápida y directa y no a través de la resistencia de 10K.
Circuito de visualización. Está constituido por una pantalla de
cristal líquido (LCD) de 2 líneas y 16 caracteres por línea.
La
comunicación con el microcontrolador es de 8 bits de datos que se
152
enumeran del menos al más significativo como D0, D1, D2, D3, D4, D5,
D6 y D7. Estas líneas son conectadas al puerto B del PIC16F877 (RB0,
RB1, RB2, RB3, RB4, RB5, RB6 y
RB7) respectivamente.
También
posee un bus de control de pantalla el cual es conectado al puerto E del
PIC RE0, RE1 y RE2, las cuales se programarán como salidas del PIC
para controlar a la LCD.
Estas se conectan respectivamente a las
entradas nombradas como RS, R/W y E. Donde si RS=0 es dato, y si
RS=1 es control. Si la entrada R/W=0 es lectura de la LCD y si R/W=1 el
escritura en la misma. La entrada E(enable)=0 la LCD permanece
inhabilitada y si E=0 está habilitada.
Circuito sensor de nivel de ultrasonido. El sensor de ultrasonido
es elaborado por la Corporación Senix. Sus características principales
son: alimentación de entrada igual a 12 VDC. Su señal de salida: 10 VDC
cuando no hay un objeto frente del mismo, en rango aproximado desde 20
centímetro delante hasta 1,5 metros, es deicr mide 1,3 metros de
distancia y envía una señal de nivel de tensión DC entre 0 y 10 voltios.
Como podemos ver en nuestro diseño se realiza un divisor de tensión a la
salida el primer amplificador operacional para obtener un nivel de tensión
de entrada al canal análogo/digital del PIC no mayor de 5 voltios DC
cuando se produzca el nivel máximo de salida del sensor (10VDC).
Circuitos de potencia. Para los circuitos de salidas de potencia se
utilizaron optotriacs (ECG3048), para el cebado de triac (ECG5608), los
cuales energizan con 110 VAC a las bombas de llenado y vaciado.
153
FASE 5. Adaptación entre el hardware y el software.
En esta etapa del estudio se analizan y determinan diferentes
mecanismos para que exista la comunicación necesaria entre el hardware
y el software previamente seleccionados es decir, se especifican las
instrucciones vía software que van a ser utilizadas garantizando que la
información que entra y sale se encuentra en perfecto estado.
Se estudió la compatibilidad entre el hardware y el software
desarrollado. De acuerdo al número de circuitos de entrada y salida del
sistema, se hace necesario que el microcontrolador sea capaz de tener
varias líneas de entrada y de salidas.
Para establecer la comunicación entre el prototipo y el computador
se utilizó el puerto serial RS-232. Para la transmisión de los datos se
utilizó la versión profesional de Visual Basic 6.0 bajo Windows, la cual
incluye un controlador personalizado denominado “COMUNICACIONES”,
que permite establecer una comunicación serie entre computadoras,
basados en el estándar RS-232 de una forma rápida y sencilla. Para
realizar esta comunicación se llevaron a cabo los siguientes pasos;
v Se estableció el puerto a utilizar; para realizar esta operación se le
asignó a la propiedad Commport de MSComm1 el valor de 2;
MSComm1.Commport=2
v Se abrió el puerto de comunicación; se le asigno el valor “True” a la
propiedad Portopen de MSComm1; MSComm1.Portopen=True.
154
v Se establecieron las características de comunicación. Para ello se
asignó la propiedad Settings de MSComm1, los valores que definan
las mismas; esto es velocidad de transmisión en baudios, paridad,
número de bits por carácter y número de bits de parada. (9600
baudios, paridad ninguna, ocho bits por carácter y 1 bits de parada):
MSComm1.Settings = (9600, N,8,1). Para enviar los datos al puerto de
comunicación se realizó por medio de la propiedad OutPort de
MSComm1. Esta propiedad permite escribir caracteres en el buffer de
transmisión. MSComm1.OutPut = Datos. Enviados $. Cabe destacar
que el puerto serial
RS-232 se escogió por las siguientes
características.
Velocidad: El puerto serial puede manejar de 110 a 256000 Bps, lo cual
lo hace óptimo como alternativa de uso, ya que el sistema debe poseer
una velocidad de respuesta inmediata.
Inmunidad al Ruido: El puerto maneja niveles de voltajes de -12 voltios
para un uno (1) lógico y 12 voltios para un cero (0) lógico, lo que hace que
el puerto sea estable con respecto a estímulos al sistema.
Conectores: Para las comunicaciones serie los ordenadores tipo PC
disponen de hasta cuatro (4) puertos seriales identificados como: COM1,
COM2, COM3, y COM4, los cuales son conectores machos que pueden
tener 9 o 25 pines de conexión.
Interconexión: El puerto serial para su interconexión sólo necesita tres
(3) conectores, lo cual lo hace sencillo y de fácil conexión con cualquier
sistema externo.
155
FASE 6. ORDINOGRAMA MODULARES Y CODIFICACIÓN DE LOS
PROGRAMAS.
Sobre la base de los diagramas generales y los diagramas de flujo
se crea un software codificado con las instrucciones propias para el
microcontrolador, cuya base de programación es el lenguaje assembler
para microcontroladores PIC serie 16. El programa editor utilizado es el
MPLAB versión 5.31. El software de control del computador es realizado
en Visual Basic versión 6.00.
Los diagramas de flujo de las principales
rutinas del software de control del microcontrolador PIC y del computador
se muestran en los anexos XX1a y XX1b. La codificación de los software
de control del microcontrolador PIC y del computador se muestran en los
anexos XX2a y XX2b.
DEPURACIÓN DEL SOFTWARE.
La depuración del software se llevó a cabo separándolos en dos
como lo son el programa del microcontrolador PIC16F877 y el del
computador hecho en Visual Basic, ya que la depuración de cada
programa es diferente, aunque luego de terminada la depuración
individual se realizó una global para poder alcanzar los objetivos previstos
en esta investigación; estas dos partes se explicarán a continuación.
156
•
Software del PIC.
Una vez realizado dicho programa se procedió a su depuración
y para esto se corrió el programa en frió, usando las herramientas
que posee el lenguaje de programación MPLAB, las cuales
permiten simular cada una de las entradas para observar la salida
al igual que los cambios producidos en cada uno de los registros a
todo lo largo del procedimiento, pudiéndose comparar lo ejecutado
por el programa con lo estipulado para ser realizado por la
programación personal y así ejecutar las correcciones necesarias
para que el software se una con el hardware.
En los software de transmisión y recepción se elaboró unas
rutinas de retardo: 1 bit de retardo, y 1 ½ bit de retardo para
(1/9600) = 104.167 µ segundos (1bit) y 156.25 µ segundos (1 ½
bit). A estas rutinas se les midió su tiempo de duración depurando
la rutina en el MPLAB y con la ventana ‘STOPWATCH’, con un PIC
trabajando con un cristal de cuarzo de 4 MHz.
•
Programa principal de control del computador.
Este software se depuró conectando la interfaz al puerto serial
COM 2.
A continuación se presenta la panta lla inicial del software de control con
sus diferentes opciones:
157
FASE 7. INTEGRACIÓN DEL HARDWARE Y EL SOFTWARE.
En esta fase, se procede a integrar todos los elementos y
componentes físicos, con las instrucciones vía software que se aplican
para el control y manejo de todas las etapas del sistema. Luego de haber
depurado el software del sistema en la fase anterior, con la ayuda de los
siguientes cuadros se logra, entender aún más las diferentes palabras de
programación en assembler (lenguaje de máquina) y las instrucciones
utilizadas en las distintas rutinas de control del sistema.
A continuación se presentan los cuadros de conexión física de los
diferentes puertos del microcontrolador.
PUERTO A
RA5
IN
Reserva
FIGURA 22
RA4
RA3
RA2
RA1
RA0
IN
IN
IN
IN
IN
Reserva
Reserva
Reserva
Reserva
Canal AN0
Sensor de
nivel
PUERTO B
RB7
RB6
RB5
RB4
RB3
RB2
RB1
RB0
I/O
I/O
I/O
I/O
I/O
I/O
I/O
I/O
D7
D6
D5
D4
D3
D2
D1
D0
158
PUERTO C
RC6
RC5
RC4
RC3
RC2
RC1
RC0
IN
OUT
IN
IN
IN
IN
OUT
OUT
RX
TX
Reserva
Reserva
Reserva
Reserva
Bomba 2
Bomba 1
PUERTO D
IN
RD6
RD5
RD4
RD3
RD2
RD1
RD0
IN
IN
IN
IN
IN
IN
IN
Reserva
Reserva
Reserva
Reserva Reserva Reserva
Reserva Reserva
PUERTO E
RE1
RE0
OUT
OUT
OUT
E
R/W
RS
RE2
CONTROL
LCD
Conexión de puertos.
FUENTE: RIVERA (2003).
159
FASE 8. CONSTRUCCIÓN DEL PROTOTIPO DEFINITIVO Y PRUEBAS
FINALES.
FIGURA 23
INICIO
BIT DE
ARRANQ
CONTADOR
TX EN BAJO
ROTA A LA DERECHA
REGISTRO TX
CARRY =
NO
TX EN
SI
RUTINA DE
RETARDO
CONTADOR
CONTADOR =
BIT
FIN
ALGORITMO PARA LA TRANSMISIÓN
FUENTE: RIVERA (2003).
160
FIGURA 24
INICIO
NO
RX=0
SÍ
RUTIN
A
CONTADOR
CARRY=0
RX=
0
CARRY=
NO 1
SI
ROTA A LA DERECHA
REGISTRO RX
RUTINA DE
RETARDO 1
CONTADOR
=CONTADOR -1
NO
CONTADOR =0
SI
FIN
ALGORITMO PARA LA RECEPCIÓN
FUENTE: RIVERA (2003).
161
Como podemos ver, el programa de control del simulador realizado
en Visual Basic 6.0 consta de tres módulos: 1. Parámetros del sistema, 2.
Acción del sistema, y 3. Simulador y gráfica del sistema.
En el módulo de parámetros del sistema tenemos tres cajas de
texto: una muestra la capacidad del tanque, la cual es variable de 0 a
1000 litros, con la barra horizontal ubicada en su parte inferior inmediata
podemos fijar el valor de la capacidad. La segunda caja texto muestra el
set point en porcentaje de 0 al 100% de la capacidad del tanque. Y por
último la tercera caja texto muestra el resultado de la multiplicación de los
162
valores de las dos primera cajas, o sea el valor del porcentaje expresado
en litros.
En el segundo módulo se encuentran tres botones de acción:
LLENADO, VACIADO y SALIR.
Cuando se presiona el botón de LLENADO, este cambia a color
verde indicando que la bomba de llenado está encendida y el proceso de
sensado se realiza cada 100 mili segundos. En caso de que el tanque
llegue al nivel igual al set poitn o más el sistema enviará la orden de
detener el bombeo y por consecuencia se apaga la bomba e y el botón de
LLENADO vuelve a tomar su color orinal gris.
Para el caso cuando se presiona el botón de VACIADO, este
también cambia a color verde indicando que la bomba de vaciado está
encendida. Igual que en el caso anterior se produce el sensado y envío de
la información del nivel por parte del interfaz; esto se realiza cada 100 mili
segundos. Cuando el nivel del tanque sea igual o menor al nivel prefijado
la bomba de vaciado de detendrá y el botón de VACIADO se colocará de
color gris.
El botón de SALIR se utiliza para terminar
el programa de
simulación.
Por último, tenemos el módulo de simulación y gráfica donde se
visualizan de dos forma
el llenado y vaciado del tanque.
Del lado
izquierdo del módulo se ve el tanque y el nivel actual y del lado derecho
se realiza una gráfica de la simulación tanto del llenado como el vaciado.
Descargar