INSTITUTO POLITÉCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA
UNIDAD PROFESIONAL ZACATENCO
PROYECTO DE TITULACIÓN
“DISEÑO DE UN
SISTEMA DE CONTROL Y MONITOREO PARA UN
ACUARIO POR ACCESO REMOTO.
”
QUE PARA OBTENER EL TÍTULO DE:
INGENIERO EN COMUNICACIONES Y ELECTRÓNICA
PRESENTAN:
ALEJANDRO DELGADILLO MARTÍNEZ
ALEJANDRO RODRÍGUEZ ESPINOZA
PABLO ADRIÁN MARTÍNEZ HERRERA
ASESORES:
M.C. JAIME PEDRO ABARCA REYNA
M.C. PEDRO MARTÍN MORALES BECERRA
INSTITUTO POLITÉCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELECTRICA
UNIDAD PROFESIONAL "ADOLFO LÓPEZ MATEOS"
REPORTE TÉCNICO
QUE PARA OBTENER EL TITULO DE INGENIERO EN COMUNICACIONES Y ELECTRÓNICA
J>OR LA OPCIÓN DE TITULACIÓN CURRICULAR
DEBERA(N) DESARROLLAR C. ALEJANDRO DELGADILLO MARTÍNEZ C. ALEJANDRO RODRÍGUEZ ESPINOZA C. PABLO ADRIAN MARTÍNEZ HERRERA
,.V
"DISEÑO DE UN SISTEMA DE CONTROL Y MONITOREO PARA UN ACUARIO POR ACCESO REMOTO"
DISEÑAR E IMPLEMENTAR UN SISTEMA DE CONTROL Y MONITOREO QUE REALICE LAS FUNCIONES NECESARIAS PARA MANTENER EN ÓPTIMAS CONDICIONES UN ACUARIO.
\
' \
• INTRODUCCIÓN
• PRINCIPALES CARACTERÍSTICAS DE LOS ACUARIOS • ACCESO REMOTO
• MODULO DE CONTROL
• SOFTWARE VINCULADO A LA IMPLEMENTACIÓN DEL SISTEMA DE CONTROL • RESULTADOS
• CONCLUSIONES • REFERENCIAS • ANEXOS
MÉXICO D.F. A 3 DE NOVIEMBRE DE 2011
Agradecimientos
Primeramente agradezco a Dios por la fe infundida en mí, llenar de mi vida de dichas y bendiciones.
Agradezco a toda mi familia por todo el apoyo brindado a lo largo de mis estudios, por toda su confianza cuando más la necesite, en especial con todo el amor y respeto, agradezco a mi madre, que me acompaño y dedicó gran parte de su tiempo en mi educación y en mi formación académica. Deseo con todo corazón que mi triunfo los haga sentirse orgullosos.
También quiero agradecer a mis amigos, por los bueno y malos momentos que hemos vivido juntos, me siento afortunado de tener amigos como los que tengo ojala, sigamos teniendo esa amistad para siempre.
Agradezco a mis profesores que tuve en mi vida escolar, por todas sus enseñanzas y esos momentos únicos que me dieron experiencia para afrontar los retos que se me presenten, a cada uno de ellos un gran reconocimiento.
A mi madre, quien con todo su esfuerzo y sacrificio me ha guiado paso a paso y
brindado las herramientas que me han permitido alcanzar la culminación de esta carrera,
mostrándome cuán importante es no sólo la educación en la escuela sino también dentro de
casa. Gracias por estar conmigo siempre que te he necesitado mamá, por haber confiado en
mí, este trabajo también te pertenece y es resultado de todos tus esfuerzos por hacer de mí
un profesional destacado.
A mi abuelita, por ser como una segunda madre para mí, a quien agradezco por sus
cuidados y haber dedicado tiempo en mi formación y en cada etapa de mis estudios. A mi
hermanita, porque tu llegada a nuestra familia cambió para bien nuestras vidas y nuestras
metas, por acompañarme en esta carrera en donde ambos hemos aprendido tanto uno del
otro.
A mi novia, por ser parte también de esta aventura, por brindarme tu compañía y amor
que, sin duda, han sido motores importantes para perseverar en esta carrera. Te amo.
A mis amigos, de quienes igualmente he aprendido bastante, que han estado conmigo en
las buenas y en las malas, compartiendo incontables momentos, a ustedes que han
aportado su granito de arena dentro de mi formación, muchas gracias.
A todos los profesores que se han involucrado en cada etapa de mi educación, a quienes
me impulsaron para esforzarme día con día para ser un mejor estudiante y se convirtieron
en un ejemplo de dedicación y perseverancia. Agradezco también al Instituto Politécnico
Nacional por darme la oportunidad de formar parte de su comunidad y permitirme
alcanzar una de las mayores metas en mi vida, ser orgullosamente ingeniero de esta
importante institución y comprometido totalmente con el desarrollo de nuestro país.
En primer lugar a Dios por haberme guiado por el camino
de la felicidad hasta ahora; en segundo lugar a cada uno
de los que son parte de mi familia por siempre haberme
dado su fuerza y apoyo incondicional que me han
ayudado y llevado hasta donde estoy ahora. Por último a
mis compañeros de proyecto porque estar en armonía
grupal lo hemos logrado y a nuestro asesor de proyecto
quién nos ayudó en todo momento,
M.C Pedro Gustavo Magaña del Rio
Gracias!!!!.
Dedicatorias.
A mi madre:
Con mucho amor y cariño le dedico este
Proyecto, porque gracias a su Apoyo
Y dedicación se logró la mayor de mis metas,
Ya que siempre estuvo impulsándome en los
Momentos más difíciles de la carrera, además del
Orgullo que sienten por mí fue lo que me hizo llegar
Al final.
A mis Abuelitas, hermano, tíos, primas y amigos:
Gracias por haber fomentado en mí el deseo
De superación y el anhelo de triunfo en la vida.
Mil palabras no bastarían para agradecerles su apoyo,
Su comprensión y sus consejos en los momentos difíciles.
A todos, espero no defraudarlos y contar
Contenido
Índice de Figuras ... I
Lista de Tablas ... II
CAPÍTULO 1. INTRODUCCIÓN ... 1
1.1 Objetivo ... 3
1.2 Justificación ... 3
1.3 Antecedentes ... 4
CAPÍTULO 2. PRINCIPALES CARACTERÍSTICAS DE LOS ACUARIOS ... 5
2.1 Introducción ... 6
2.2 Variables principales que intervienen en un acuario... 8
2.2.1 Temperatura ... 8
2.2.2 Potencial de Hidrógeno (pH) en el agua ... 9
2.2.2.1 Consecuencias del aumento del pH del agua en el acuario ... 9
2.2.2.2 Consecuencias del descenso del pH del agua en el acuario ... 10
2.2.3 Iluminación ... 10
2.2.4 Nivel del agua ... 11
2.2.5 Filtrado ... 11
2.2.6 Aireación ... 12
CAPÍTULO 3. ACCESO REMOTO ... 13
3.1 Introducción ... 14
3.2 Acceso a Escritorio Remoto ... 14
3.3 Ventajas del Acceso Remoto ... 16
3.4 Uso de software para Acceso Remoto ... 17
CAPÍTULO 4. MÓDULO DE CONTROL... 21
4.1 Introducción ... 22
4.2 Microcontrolador ... 22
4.2.1 Microcontrolador PIC18F4550 ... 24
4.2.1.1 Puertos de Entrada/Salida (E/S) ... 27
4.2.1.2 Módulo Convertidor Analógico/Digital (A/D) ... 30
4.2.1.3 Interfaz Bus Serie Universal (USB) ... 40
4.3 Adquisición de datos ... 42
4.4 Acondicionamiento de señales... 43
4.4.1 Acondicionamiento de señales de entrada al microcontrolador ... 43
4.5 Circuito acondicionador de señal ... 44
4.6 Aislamiento de señales eléctricas y etapa de potencia ... 49
4.7 Sensores ... 50
4.8 Circuitos sensores del módulo de control ... 51
4.8.1 Sensor de temperatura ... 51
4.8.2 Sensor de pH. ... 53
4.8.3 Sensor de nivel ... 54
4.9 Circuitos de control ... 55
4.9.1 Control de temperatura ... 56
4.9.2 Control de pH ... 56
4.9.3 Control de iluminación ... 57
4.9.4 Control de nivel ... 57
4.9.5 Control de otras variables ... 58
CAPÍTULO 5. SOFTWARE VINCULADO A LA IMPLEMENTACIÓN DEL SISTEMA DE CONTROL ... 59
5.1 Programación del microcontrolador ... 60
5.1.1 Librería de funciones USB... 61
5.1.1.1 Generación del archivo descriptor USB ... 61
5.2 Consideraciones en la grabación del microcontrolador ... 63
5.3 Presentación de los datos en la computadora ... 64
CAPÍTULO 6. RESULTADOS ... 67
6.1 Introducción ... 68
6.2 Pruebas al software de control y monitoreo ... 68
6.3 Funcionamiento del sistema de control ... 71
6.3.1 Control de temperatura ... 71
6.3.2 Control de iluminación ... 73
6.3.3 Control de nivel ... 76
6.3.4 Prueba general al sistema ... 80
CONCLUSIONES ... 82
REFERENCIAS ... 85
ANEXO I. DIAGRAMA DEL MÓDULO DE CONTROL ... 87
ANEXO II. RESUMEN DEL ESTÁNDAR USB ... 89
Índice de Figuras
2.1 Acuario de agua dulce. ... 7
2.2 Acuario de agua salada. ... 7
3.1 Red Privada Virtual ... 15
3.2 Acceso Remoto en Operación ... 20
4.1 Arquitectura PIC18 ... 23
4.2 Microcontrolador PIC18F4550 ... 25
4.3 Disposición de los pines del microcontrolador PIC18F4550 ... 25
4.4 Diagrama a bloques interno del microcontrolador PIC18F4550 ... 26
4.5 Operación de los puertos de E/S genéricos. ... 29
4.6 Proceso de conversión A/D que se lleva a cabo en un microcontrolador ... 30
4.7 Fases de la conversión A/D del PIC18F4550 ... 31
4.8 Formato del resultado de la conversión A/D ... 32
4.9 Diagrama a bloques del convertidor A/D del PIC18F4550 ... 34
4.10 Interfaz USB del PIC18F4550 ... 41
4.11 Resumen de periféricos y opciones USB del microcontrolador PIC18F4550 ... 42
4.12 Disposición de las terminales del amplificador operacional LM358... 45
4.13 Circuito del amplificador operacional en configuración inversora ... 46
4.14 Circuito del amplificador operacional en configuración no inversora ... 47
4.15 Circuito del amplificador en configuración de seguidor ... 48
4.16 Circuito básico de potencia y aislamiento de señales ... 50
4.17 Sensor de Temperatura LM35 ... 53
4.18 Circuito implementado para el control de dispositivos dentro del sistema ... 55
5.1 Interfaz del software de programación MikroC PRO For PIC ... 60
5.2 Herramienta de MikroC para la generación del archivo descriptor USBdsc.c. ... 63
5.3 Instalación del controlador en la PC para el módulo de control ... 64
5.4 Ventana de estado de la instalación del controlador del módulo de control ... 65
5.5 Mensaje de confirmación de la correcta instalación del módulo de control ... 65
5.6 Interfaz del software de monitoreo y control ... 66
6.1 Conexión entre el módulo de control y la PC y comunicación con la aplicación ... 69
6.2 Estado del módulo de control en una conexión exitosa ... 70
6.3 Estado inicial de la aplicación en una conexión exitosa ... 70
6.4 Monitoreo de la temperatura por medio de la aplicación ... 71
6.5 Control del calefactor por medio del sistema de control ... 72
6.12 Bomba de llenado en estado activo ... 78
6.13 Bomba de llenado en estado inactivo ... 79
6.14 Estado del módulo de control al activar todos los dispositivos ... 80
6.15 Operación en conjunto de los dispositivos que integran el sistema de control ... 81
6.16 Estado de la aplicación al operar todos los dispositivos que integran el sistema de control ... 81
Lista de Tablas
4.1 Líneas de E/S para cada uno de los puertos del PIC18F4550 ... 284.2 TAD vs. Frecuencias de operación de los osciladores ... 33
Capítulo 1. Introducción
El presente proyecto se plantea como una herramienta de apoyo a una situación en particular: el tiempo que los propietarios de un acuario ocupan para llevar a cabo los cuidados más comunes del mismo, los cuales, demandan atención en forma por demás extenuante, y cuyo fin es el de conseguir las condiciones decorosas que permitan la sobrevivencia de las especies que habitan en este ambiente.
El trabajo se ha desarrollado en 6 capítulos, de los cuales, el capítulo 2 constituye una breve descripción de las principales características y parámetros que influyen en el ambiente de un acuario.
La solución propuesta en este trabajo es el diseño de un sistema de control y monitoreo, el cual se conforma en la parte correspondiente al hardware, por el módulo electrónico que se describe en el capítulo 4, en el que se adaptan diversos dispositivos que permiten el envío de los datos obtenidos desde el acuario hasta una computadora mediante el uso del microcontrolador PIC18F4550, con el cual, se hace posible la integración de una interfaz USB, hecho que hace posible su conexión a cualquier PC que cuente con puertos que permitan la utilización de esta interfaz.
Capítulo 1. Introducción
1.1 Objetivo
Diseñar e implementar un sistema de control y monitoreo que realice las funciones necesarias para mantener en óptimas condiciones un acuario.
1.2 Justificación
El interés de las personas por recrear ambientes acuáticos a través de la implementación de un acuario, dentro de sus hogares, negocios o cualesquiera otros escenarios, ha crecido notablemente en los últimos años. Sin lugar a dudas, lo anterior se debe principalmente al hecho de que los acuarios representan un excelente medio para apreciar la belleza y diversidad de la vida acuática. Pese a ello, los cuidados que deben hacerse a un acuario para mantenerlo en las condiciones idóneas que permitan la preservación de las especies que habitan en él, en general, son muy delicados y demandan tiempo considerable a sus propietarios.
Gracias a que hoy en día existen tecnologías potenciales como Internet y el creciente desarrollo de microcontroladores y otros dispositivos electrónicos, ha sido posible desarrollar el presente proyecto, con el cual, se pretende implementar un sistema de control económico, pero a la vez, eficiente y competitivo, que realice de manera autónoma, algunas de las tareas que regularmente llevan a cabo quienes se dedican a la crianza de peces en un acuario, sin que ello signifique un contacto nulo con este último. Así pues, la presencia del usuario en el lugar en que se encuentre instalado el sistema no es absolutamente necesaria, lo cual le permite destinar su tiempo a la realización de otras actividades.
Capítulo 1. Introducción
1.3 Antecedentes
En el intento por controlar los diferentes fenómenos físicos que existen a su alrededor, a través de los años y desde tiempos remotos, el ser humano ha logrado desarrollar una serie de técnicas de control que, en la actualidad le permiten manipular diversas variables que intervienen en procesos, desde los más simples hasta los más complejos. El campo del Control, ha sido entonces, trascendental, desde su apogeo en la Revolución Industrial, hasta nuestros días.
Fue en los años sesenta, cuando la teoría de control se vio envuelta en avances significativos gracias al creciente desarrollo tecnológico: el auge de las tecnologías de la comunicación, la llegada de los microcontroladores y debido a que la disponibilidad de las computadoras hizo posible el análisis en el dominio del tiempo de sistemas cada vez más complejos.
A la par de este desarrollo, Internet también se ha convertido en una herramienta fundamental dentro del control de procesos; además, la teoría de redes es ahora indispensable en la implementación de los sistemas de control, en los cuales, con mayor frecuencia, se emplean las nuevas tecnologías desarrolladas dentro del campo de las comunicaciones.
Adicionalmente, un hecho importante es que las computadoras se han vuelto más baratas, compactas y eficientes, lo cual, ha permitido el desarrollo potencial de diversos tipos de software, cada vez más robustos, y encaminados al control de procesos. Es por ello, que hoy en día, se utilizan como parte integral de los sistemas de control y han permitido que las aplicaciones recientes de la teoría de control moderna incluyan sistemas, en teoría, ajenos a la ingeniería, tales como los biológicos, biomédicos, económicos y socioeconómicos, por nombrar sólo algunos.
CAPÍTULO 2. PRINCIPALES
CARACTERÍSTICAS DE LOS
Capítulo 2. Principales características de los acuarios
2.1 Introducción
En este capítulo, se explican brevemente algunas de las características principales de un acuario. Por encontrarse fuera del alcance de este proyecto, no se presenta información a detalle, por lo cual se recomienda consultar bibliografía e información relacionada si así se requiere.
Un acuario es, en esencia, un ecosistema artificial que integra diversos componentes tanto mecánicos como eléctricos, que permiten simular y mantener controlados ambientes acuáticos tanto de agua dulce como de agua salada y albergar diferentes formas de vida correspondientes a éstos, tales como peces, invertebrados y plantas. El diseño básico de un acuario tiene forma de paralelepípedo y está fabricado por algún material transparente perfectamente sellado, generalmente vidrio, permitiendo así, apreciar su interior.
Aunque frecuentemente el concepto de pecera se utiliza para referirse a un acuario, ciertamente existen marcadas diferencias entre ambos. Un acuario se distingue de una pecera, porque en esta última, las condiciones ambientales no están controladas y, para mantener con vida a las especies, el agua debe ser sustituida cada cierto tiempo, al no poseer ningún sistema que permita su depuración. Por otro lado, en un acuario, las condiciones ambientales deben ser estables y además, debe estar acondicionado de acuerdo a las necesidades de los seres que viven en él.
Capítulo 2. Principales características de los acuarios
Figura 2.1 Acuario de agua dulce
[image:18.612.128.486.386.614.2]Capítulo 2. Principales características de los acuarios
Mediante el sistema diseñado dentro este proyecto y que se describe en capítulos posteriores, se pretende llevar a cabo un control óptimo, de los principales parámetros que intervienen generalmente en los acuarios, independientemente si se trata de uno de agua dulce o uno de agua salada. Tales variables, que en definitiva condicionan las características de supervivencia de las especies existentes en ellos, se detallan enseguida.
2.2 Variables principales que intervienen en un acuario
Al igual que en cualquier ambiente natural, dentro de un acuario existen diversas variables que modifican en mayor o menor medida, el equilibrio necesario para la supervivencia de las formas de vida que habitan este ecosistema artificial. A continuación se describe la forma en que las variables más importantes modifican el comportamiento del sistema y las consecuencias de sus efectos en las especies que viven en el acuario.
2.2.1 Temperatura
Los peces son animales de “sangre fría”, por lo tanto, mantienen la temperatura corporal igual a la del medio ambiente. Por esta razón, es extremadamente importante mantener la temperatura del acuario constante o por lo menos dentro de niveles tolerados por los organismos. Los cambios repentinos pueden causar estrés y provocar consecuentes enfermedades.
Los peces tropicales, por ejemplo, se originan en lugares de climas cálidos y templados, por lo que requieren una temperatura de agua constante de entre 24 a 27°C y comienzan a manifestar síntomas de malestar sólo con que ésta descienda un poco por debajo de los 20°C. Por el contrario, los organismos de mares fríos y los mediterráneos no soportan valores superiores a los 22°C.
Capítulo 2. Principales características de los acuarios
organismos que habitan en él, también condiciona todos los demás parámetros ambientales. Por tales razones, debe realizarse un control óptimo de ésta variable y, por medio de su monitorización, se podrán tomar las medidas correctivas pertinentes, en caso de ser necesario.
2.2.2 Potencial de Hidrógeno (pH) en el agua
El nivel de alcalinidad del agua en la que habitan las diferentes especies en un acuario también juega un papel trascendental en la supervivencia de las mismas. Las variaciones, incluso mínimas de pH en el agua, pueden llegar a provocar alteraciones notables en las formas de vida que habitan el acuario. Por tal motivo, es sumamente importante, controlar los niveles de alcalinidad del agua y mantener el equilibrio químico de la misma. A continuación se explican, brevemente, los dos escenarios que podrían ocurrir con la variación del pH y las consecuencias que éstos ocasionarían dentro del ecosistema.
2.2.2.1Consecuencias del aumento del pH del agua en el acuario
Capítulo 2. Principales características de los acuarios
2.2.2.2Consecuencias del descenso del pH del agua en el acuario
Cuando el pH desciende más allá de lo tolerado por los peces, se produce en muchas especies otro tipo de enfermedad conocida como acidosis. Una de las razones más comunes para que el pH descienda, es la presencia exagerada de ácidos orgánicos en el acuario, producto de una superpoblación y en algunos casos, por escasez de plantas y/o iluminación inadecuada o insuficiente.
La acidosis se manifiesta en forma de derrames sanguinolentos que pueden afectar el cuerpo y aletas de los peces, erizamiento de aletas, destrucción de la mucosa (y la consiguiente invasión de organismos patógenos), falta de equilibrio en la natación (debido a que la baja presión osmótica afecta la vejiga natatoria de los peces), temblores, muerte entre las plantas en posición normal y, en el mejor de los casos, ocasionar estrés.
2.2.3 Iluminación
Así como los peces requieren, para subsistir, que las condiciones del acuario cumplan diversos parámetros, las plantas también necesitan, principalmente de uno: la luz. Tanto en intensidad, como en cantidad (horas al día), la iluminación del acuario es necesaria para que las plantas realicen el proceso fotosintético, fuente de su propia existencia. Es por esta razón, que un acuario debe contar con iluminación propia, indispensable para asegurar la supervivencia de las plantas y, consecuentemente, la de los animales.
Capítulo 2. Principales características de los acuarios
2.2.4 Nivel del agua
La evaporación es uno de los fenómenos físicos que, sin duda, afectan el equilibrio dentro del acuario, ocasionando la disminución gradual del agua contenida dentro del mismo.
La importancia de mantener el nivel del agua constante dentro de un acuario no sólo radica en el hecho obvio de que la disminución del mismo, en casos extremos, podría poner en peligro la supervivencia de las especies que habitan este ecosistema artificial, sino que también evita oscilaciones en la salinidad del agua, sobre todo en los acuarios de agua salada.
De esta manera, llevar a cabo un control de esta variable, permite al usuario estar seguro de que el agua mantendrá en todo momento, el nivel deseado dentro del acuario.
2.2.5 Filtrado
Capítulo 2. Principales características de los acuarios
2.2.6 Aireación
Casi todos los organismos acuáticos, a excepción de algunas bacterias, son aeróbicos, es decir, necesitan de oxígeno para respirar. Es por tanto esencial que el agua contenga una adecuada cantidad de oxígeno, del que depende tanto la vida de los organismos presentes en el acuario como el correcto funcionamiento de los filtros. Dicho elemento es producido solamente por las plantas y las algas que pueblan el acuario y se disuelve en el agua gracias a los intercambios gaseosos que se producen en la superficie entre la propia agua y el aire exterior.
El proceso de aireación se lleva a cabo en la superficie del agua. La forma más eficiente de incrementar los niveles de oxígeno en la misma, se realiza a través del movimiento y agitación de la superficie (obviamente sin que este hecho provoque estrés a los habitantes del acuario). Tomando en cuenta que, a mayor movimiento superficial, habrá una mayor oxigenación.
Capítulo 3. Acceso Remoto
3.1 Introducción
El acceso remoto sigue el paradigma cliente-servidor. Cuando un usuario en una computadora local decide acceder en un sistema remoto, debe llamarse a un programa de aplicación local para el servicio de acceso remoto y el usuario tiene que introducir el nombre de la computadora remota a la cual se desea contactar, entonces, se utiliza el protocolo TCP/IP (Transmission Control Protocol / Internet Protocol) para conectarse, a
través de internet.
En dicho acceso remoto se utilizan protocolos para la comunicación entre máquinas y aplicaciones en ambas computadoras que permitan enviar y recibir archivos. Además se debe contar con un fuerte sistema de seguridad (tanto en la red, como los protocolos y las aplicaciones).
Las redes virtuales privadas utilizan protocolos especiales de seguridad que permiten obtener acceso a servicios de carácter privado, únicamente a personal autorizado, de una empresa, centros de formación, organizaciones, etc.; cuando un usuario se conecta vía Internet, la configuración de la red privada virtual le permite conectarse a la red privada del organismo con el que colabora y acceder a los recursos disponibles de la misma, tal y como si se encontrase frente al ordenador de su oficina.
3.2 Acceso a Escritorio Remoto
En redes de computadoras, acceder desde una computadora a un recurso ubicado físicamente en otra computadora, a través de una red local o externa (como internet) se le llama acceso remoto.
Capítulo 3. Acceso Remoto
distancia. Utilizando el Software de libre distribución Real VNC para establecer la conexión con ayuda de una Red VPN (véase Figura 3.1), se configura el acceso remoto.
RED PUBLICA (INTERNET)
PC LAPTOP
MOVIL
ACCESO A RED PUBLICA
ROUTER TUNEL VPN
ACUARIO
PC
ROUTER
FIREWALL
BD
Figura 3.1 Red Privada Virtual
Como ya se ha mencionado, dentro del acceso remoto se ven implicados protocolos para la comunicación entre máquinas y aplicaciones en ambas computadoras que permitan recibir/enviar los datos necesarios. Además de que, tanto la red, como los protocolos y las aplicaciones deben contar con un fuerte sistema de seguridad. Remotamente se puede
acceder prácticamente a cualquier recurso que ofrece una o más computadoras. Se pueden acceder a archivos, dispositivos periféricos (como impresoras), configuraciones, etc. Por ejemplo, se puede acceder a un servidor de forma remota para configurarlo, controlar el estado de sus servicios, transferir archivos, etc.
Capítulo 3. Acceso Remoto
3.3 Ventajas del Acceso Remoto
Si por alguna razón el usuario se encuentra lejos de su estación de trabajo es muy probable que en algún momento surja la necesidad de monitorear y/o controlar dicha estación, incluso si requiere dar mantenimiento puede ser útil el empleo de un acceso remoto.
Utilizando el software adecuado, puede configurarse un Acceso Remoto, siempre y cuando la computadora que se desea manipular esté dentro de una red, en ocasiones, como es el caso del presente proyecto, es necesario que esta computadora esté conectada a Internet. Para poder realizar lo anterior, debe instalarse un programa en la computadora que será controlada de forma remota. Una vez configurado el programa debe accederse a Internet y ubicar la PC remota, mediante la búsqueda del propio servidor.
Siguiendo los pasos adecuados podrá realizarse la comunicación con la computadora de manera remota, haciendo posible su manipulación y permitiendo al usuario tener la sensación de encontrarse frente a su computadora.
Dependiendo de las necesidades del usuario y del software utilizado para el acceso remoto se pueden obtener diferentes ventajas y desventajas de la conexión establecida, como por ejemplo, existen algunos programas que permiten transferir archivos entre las dos computadoras, mostrar video, audio e incluso algunos permiten el uso de chat y multisesiones para los usuarios.
Otra aplicación de estos programas es la de dar soporte técnico remoto a los clientes. Para esta aplicación hay programas de acceso remoto como LogMeIn que hacen un diagnóstico completo de todos los parámetros de la PC remota.
Capítulo 3. Acceso Remoto
3.4 Uso de software para Acceso Remoto
Como se ha mencionado con anterioridad, existen diversos programas que brindan soporte al servicio de Acceso Remoto, o más específicamente, al control de escritorio remoto. A continuación se mencionan algunos de estos programas, permitiendo así, diferentes opciones para el desarrollo futuro de este proyecto.
ComodoEasyVPN
Es un programa que permite crear rápidamente grupos de trabajo en varios ordenadores en una red a través de Internet o Red Local. EasyVPN no requiere configuración de expertos, es rápido y fácil de configurar y utiliza cifrado de 128 bits para recrear un cableado de red de área local a través de Internet.
Los otros contactos también tendrán que tener instalado ComodoEasyVPN, para así ingresar los datos de login.
UltraVNC
Es un programa gratuito para acceso remoto, que permite controlar una computadora desde otra a través de una red. Es muy similar al RealVNC, pero tiene al menos dos grandes ventajas: exhibir una barra de comandos sobre la ventana de la computadora que está siendo accedida y permite la transferencia de archivos entre ellas.
Para utilizar UltraVNC, es necesario instalar la versión Server en el ordenador que será
accedido y la versión Viewer en la otra computadora. El archivo de instalación tiene las dos
Capítulo 3. Acceso Remoto
Radmin
Permite realizar la administración de sistemas, gestionar equipos de red a distancia y administrar a distancia a través de Internet. Con Radmin se puede ahorrar tiempo y dinero accediendo a equipos remotos en cualquier sitio donde sea necesaria la administración de sistemas, por ejemplo, en equipos domésticos y a equipos de oficina durante viajes de negocio.
TeamViewer
TeamViewer, al igual que los anteriores brinda la opción de control remoto. Las versiones comerciales disponen de canales de datos totalmente protegidos con Key
Exchange y AES (256 Bit) Session Encoding, cumpliendo así, con los estándares de
seguridad de https/SSL.
Los mayores problemas cuando se intenta utilizar software de control remoto están provocados por cortafuegos, puertos bloqueados y enrutadores NAT para direcciones IP locales. Sin embargo, TeamViewer encontrará una ruta para conectar con la PC remota también a través de cortafuegos.
Real VNC
Es un programa de software libre basado en una estructura cliente-servidor, también es llamado software de escritorio remoto, el cual permite tomar el control del ordenador servidor remotamente a través de un ordenador cliente y puede ser descargado a través de la siguiente liga: http://www.realvnc.com/products/download.html. VNC no impone
Capítulo 3. Acceso Remoto
El programa servidor suele tener la opción de funcionar como servidor HTTP para mostrar la pantalla compartida en un navegador con soporte de Java. En este caso el usuario remoto (cliente) no tiene que instalar un programa cliente de VNC, éste es descargado por el navegador automáticamente. Cabe mencionar que este programa fue elegido para la realización de este proyecto por ser realmente sencillo de utilizar y configurar; se realizaron pruebas con la mayoría de los programas mencionados con anterioridad y se determinó que Real VNC era el que mejor cubría los requerimientos, pues no consume muchos recursos, brinda la opción de Acceso Remoto y aún más importante, permite acceder a la PC remota desde cualquier navegador que posibilite emplear el entorno de Java.
3.5 Software Adicional
Una vez establecida la conexión remota entre equipos, el usuario que accede remotamente hace uso de un software o programa adicional que le permite controlar y monitorear al sistema. Tal programa, que se describe en el capítulo 5, está realizado por medio del editor de Visual Basic, programado previamente con el fin de mantener la comunicación entre el microcontrolador y la computadora y generado a partir de una interfaz simple para el usuario, capaz de mostrar información acerca del estado actual del acuario.
Una vez que Real VNC está correctamente configurado y funcionando, el usuario únicamente tendrá que iniciar el ejecutable generado previamente con Visual Basic, para así, comenzar a manipular el sistema.
Capítulo 3. Acceso Remoto
Figura 3.2 Acceso Remoto en Operación
Capítulo 4. Módulo de Control
4.1 Introducción
En el Capítulo 2 se expuso el comportamiento de las principales variables involucradas en el ambiente de un acuario. En éste capítulo se describe a detalle el dispositivo que se propone para realizar el control de tales variables. Se hace un énfasis especial en la información relacionada al microcontrolador PIC18F4550 puesto que representa el núcleo de éste módulo de control, aunque obviamente, todos los demás bloques que lo conforman son también relevantes para el lograr el correcto funcionamiento del sistema.
4.2 Microcontrolador
Durante varios años, los microcontroladores de la serie PIC16 de Microchip Inc., conocidos también como microcontroladores PIC de gama media, han sido muy utilizados en diversas aplicaciones, ello debido en gran parte, a los beneficios que éstos ofrecen, a un costo relativamente bajo. Aunque se trata de excelentes microcontroladores que pueden ser empleados para propósitos generales, tienen ciertas limitaciones. Por ejemplo, la capacidad de memoria de programa y de datos son limitados, la pila (stack) es pequeña, y la estructura
de interrupciones es bastante primitiva. Además de éstos inconvenientes, los microcontroladores de la serie PIC16 tampoco ofrecen soporte directo para interfaces periféricas avanzadas como USB (Universal Serial Bus), Ethernet, entre otras, y la interconexión con tales dispositivos no es sencilla. El conjunto de instrucciones relacionadas a estas interfaces para estos microcontroladores es también limitado.
Capítulo 4. Módulo de Control
Flash con tamaños desde 8 hasta 128kbytes y una memoria de datos desde 256bytes hasta 4kbytes, operando en un rango de entre 2 y 5V.
Figura 4.1 Arquitectura PIC18
Las características más relevantes de los microcontroladores con las que cuenta la serie PIC18F son:
Conjunto de 77 instrucciones.
Compatibles con código de programación de la serie PIC16.
Niveles de prioridad de interrupciones.
Temporizadores/Contadores de más de 8 bits.
Módulos mejorados de comparación/captura/PWM.
Módulo para comunicación SPI e I2C.
Módulos USART.
Puerto esclavo paralelo (PSP).
Convertidor analógico/digital de 10 bits.
Módulo programable de detección de bajo-voltaje (LVD).
Temporizador Watchdog (WDT).
Programación In-circuit.
Bus de 16 bits
Bus de 8 bits MEMORIA DE PROGRAMA FLASH (HASTA 2MB)
PIC 18 RISC CPU
Capítulo 4. Módulo de Control
Además, algunos microcontroladores de la familia PIC18F tienen las siguientes características especiales:
Interfaz directa CAN bus 2.0
Interfaz directa USB 2.0
Interfaz directa para control de LCD.
Interfaz TCP/IP.
Interfaz ZigBee.
Interfaz directa para control de motores.
4.2.1 Microcontrolador PIC18F4550
Dentro de la gama alta de microcontroladores PIC, se encuentra el PIC18F4550 (véase Figura 4.2), elegido para la realización de esta aplicación. La principal razón de su selección, es que este dispositivo incorpora un completo módulo de comunicaciones compatibles con el estándar Bus Serie Universal 2.0 (USB 2.0), el cual se implementa en este proyecto como Dispositivo de Interfaz Humana (Human Interface Device o HID),
particularidad que permite al dispositivo no necesitar de la creación de controladores
(drivers) especiales para ser reconocido por una PC (ha sido probado en los Sistemas
Operativos Windows XP y Windows 7), puesto que para su instalación emplea los controladores integrados en el propio sistema operativo; si se desea obtener información más detallada sobre este estándar, puede consultarse el apartado Anexos de este documento. La Figura 4.3 muestra al microcontrolador y la disposición de sus pines, mientras que la Figura 4.4 muestra el diagrama a bloques interno.
Capítulo 4. Módulo de Control
Figura 4.2 Microcontrolador PIC18F4550
Capítulo 4. Módulo de Control
Capítulo 4. Módulo de Control
Algunas características adicionales con las que cuenta este microcontrolador son las que se enuncian a continuación:
Dos velocidades de puesta en marcha.
Retención de datos estimada en más de 40 años.
Permite más de 100,000 operaciones de grabación/borrado de datos.
Auto-Programabilidad.
Conjunto de instrucciones extendido.
Módulo CCP mejorado.
Direccionamiento USART mejorado.
Convertidor Analógico/Digital de 10 bits.
Puerto ICD/ICSP dedicado.
32kbytes de memoria Flash de programa.
13 Canales Analógicos/Digitales.
5 Puertos bidireccionales de entrada/salida.
Tres de los módulos más relevantes que integra el PIC18F4550 y de los cuales se hace uso en el presente proyecto, son los correspondientes a los puertos de entrada/salida (I/O
ports), el módulo convertidor analógico/digital (A/D converter) y la interfaz USB
incorporada. Dada su importancia, a continuación se describen brevemente las características de éstos; información adicional puede ser consultada en la hoja de especificaciones respectiva.
Capítulo 4. Módulo de Control
el modo alternativo no puede ser utilizada como línea digital de E/S estándar. La Tabla 4.1 muestra la disposición de las entradas y salidas de cada uno de los 5 puertos que conforman al microcontrolador.
Tabla 4.1 Líneas de E/S para cada puerto del PIC18F4550
Puerto Líneas de E/S
PORTA 7 Líneas de E/S
PORTB 8 Líneas de E/S
PORTC 5 Líneas de E/S + 2 Líneas de Entrada
PORTD 8 Líneas de E/S
PORTE 3 Líneas de E/S + 1 Línea de Entrada
Cada puerto tiene designados tres registros para su operación. Estos registros son:
TRIS (registro de dirección de datos). Mediante este registro se configuran cada una
de las líneas de E/S del puerto. Si, por ejemplo, se configura un bit del registro TRISA = 1, entonces el pin correspondiente del puerto PORTA estará designado como entrada, si por el contrario, se configura un bit del registro TRISA = 0, el pin del puerto PORTA correspondiente estará designado como salida.
PORT (lectura de niveles de los pines en el dispositivo). Mediante este registro se
puede leer el nivel del pin de E/S y se puede establecer el valor del latch de salida.
LAT. Mediante este registro se puede leer o establecer el valor del latch de salida.
Un modelo simplificado de un puerto de E/S genérico, sin las interfaces a otros periféricos, se muestra en la Figura 4.5.
El nombre de los pines de un puerto se designa de la forma RPn, donde P es la letra
correspondiente al puerto y n es el bit correspondiente al número del puerto. Por ejemplo,
Capítulo 4. Módulo de Control
Figura 4.5 Operación de los puertos de E/S genéricos.
En el presente proyecto, el módulo de control integra diversos dispositivos que requieren de la utilización de algún puerto del microcontrolador, para ser empleado, ya sea, como entrada o como salida, la cual, a su vez puede ser usada como analógica o digital. De manera general entonces, se puede concluir que, prácticamente, cuando se hace uso de un puerto del microcontrolador, se puede requerir de alguna de las siguientes operaciones:
Capítulo 4. Módulo de Control
4.2.1.2 Módulo Convertidor Analógico/Digital (A/D)
Los convertidores A/D se encuentran entre los dispositivos más utilizados dentro de las operaciones de adquisición de datos. Mientras que los diversos sistemas digitales operan con valores binarios (discretos), en el entorno físico, todas las señales son de tipo analógicas (continuas). La temperatura, la presión, la humedad y la velocidad son algunos ejemplos de las cantidades físicas con las que se interactúa a diario. Una cantidad física es convertida en una señal eléctrica (de voltaje o de corriente) utilizando un dispositivo llamado transductor; siendo la gran variedad de sensores existentes, ejemplos de estos dispositivos. Los sensores de temperatura, presión, luz, velocidad y muchas otras cantidades producen una salida generalmente de voltaje. Por lo tanto, es necesario emplear un convertidor A/D que traduzca las señales analógicas generadas por los sensores en sus correspondientes señales digitales para que puedan ser reconocidas por el microcontrolador y permitir así, su posterior procesamiento. Conocer las características de este convertidor es fundamental para poder utilizarlo de manera eficiente. El proceso de conversión A/D básico que se realiza por medio del microcontrolador puede observarse en la Figura 4.6.
El microcontrolador PIC18F4550 incorpora un módulo de conversión A/D, mostrado en la Figura 4.7. Estos módulos, utilizados por Microchip Inc., utilizan la operación conocida como muestreo y retención (Sample & Hold) por medio de un capacitor y después se
emplea el módulo de conversión. El módulo de conversión A/D es del tipo de aproximaciones sucesivas.
Figura 4.6 Proceso de conversión A/D que se lleva a cabo en un microcontrolador Sensor Convertidor
Capítulo 4. Módulo de Control
El convertidor de aproximaciones sucesivas se utiliza en aplicaciones donde se necesitan altas velocidades de conversión. Se basa en realizar sucesivas comparaciones de forma ascendente o descendente hasta encontrar un valor digital que iguale la tensión entregada por el convertidor A/D y la tensión de entrada.
Figura 4.7 Fases de la conversión A/D del PIC18F4550
Durante la fase de muestreo, el interruptor se cierra y el condensador se carga a la tensión de entrada (el tiempo que el interruptor permanece cerrado es fundamental para la correcta carga del condensador). Una vez abierto el interruptor, el condensador mantendrá (teóricamente) la tensión de entrada mientras el módulo A/D realiza la conversión.
El módulo convertidor A/D del PIC18F4550, tiene las siguientes características:
10 bits de resolución.
12 canales para entradas analógicas (mostrados en la Figura 4.9) configurables por medio del registro ADCON0 que se describe posteriormente.
Los datos de salida binarios convertidos son retenidos por dos registros de funciones especiales llamados ADRESL y ADRESH, los cuales almacenan el valor de los resultados más bajos y más altos, respectivamente, obtenidos en la conversión.
Muestreo y Retención
Salida Digital Entrada
Analógica
Capítulo 4. Módulo de Control
pertenecerán ya sea al registro ADRESL o ADRESH, tal y como se muestra en la Figura 4.8.
Puede hacerse uso del voltaje de alimentación del microcontrolador (VCC) o, en su
defecto, de un voltaje externo para ser utilizado como voltaje de referencia (VREF)
dentro del proceso de conversión.
.
Figura 4.8 Formato del resultado de la conversión A/D
El tiempo de conversión A/D (TAD) se define como el tiempo que requiere el
convertidor A/D para convertir el valor de la señal analógica de entrada en su respectivo valor digital y se designa por medio de la frecuencia de oscilación (FOSC) del cristal
conectado a los pines correspondientes del microcontrolador. La conversión A/D requiere 11 TAD por cada conversión de 10 bits. La fuente del reloj de conversión A/D puede
seleccionarse por software mediante el registro ADCON2, que se muestra líneas más abajo. Siendo TOSC, el periodo del oscilador, existen siete opciones posibles para configurar TAD,
las cuales se muestran en la Tabla 4.2. 7 2 1 0 7 0
ADFM = 0 Resultado de 10 bits
7 0 7 6 5 0
0000 00
ADRESH ADRESL
Resultado de 10 bits
Justificación Izquierda
ADFM = 1
ADRESH ADRESL
Resultado de 10 bits
Capítulo 4. Módulo de Control
Tabla 4.2 TAD vs. Frecuencias de operación de los osciladores
Fuente de Reloj de Conversión A/D (TAD) Asumiendo TAD Mín. = 0.8 µs
Operación ADSC2:ADSC0 FOSC Máxima
2 TOSC 000 2.50 MHz
4 TOSC 100 5.00 MHz
8 TOSC 001 10.00 MHz
16 TOSC 101 20.00 MHz
32 TOSC 010 40.00 MHz
64 TOSC 110 48.00 MHz
RC (TAD típico de 2.5 µs) x11 1.00 MHz
Nota: Mientras que la frecuencia de oscilación del cristal puede ser de hasta 48 MHz,
Capítulo 4. Módulo de Control
Figura 4.9 Diagrama a bloques del convertidor A/D del PIC18F4550
Capítulo 4. Módulo de Control
ADCON0: REGISTRO DE CONTROL A/D 0U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0
- - CHS3 CHS2 CHS1 CHS0 GO/ DONE ADON
bit 7 bit 0
Leyenda:
R = Bit de lectura W = Bit de escritura U = Bit o i ple e tado, se lee co o
-n = Valor en POR = Bit activado = Bit desactivado x = Bit es desconocido
bit 7-6 No implementado: Se lee co o
bit 5-2 CHS3:CHS0: Bits de Selección de Canales Analógicos 0000 = Canal 0 (AN0)
0001 = Canal 1 (AN1) 0010 = Canal 2 (AN2) 0011 = Canal 3 (AN3) 0100 = Canal 4 (AN4) 0101 = Canal 5 (AN5)(1) 0110 = Canal 6 (AN6)(1) 0111 = Canal 7 (AN7)(1) 1000 = Canal 8 (AN8) 1001 = Canal 9 (AN9) 1010 = Canal 10 (AN10) 1011 = Canal 11 (AN11) 1100 = Canal 12 (AN12) 1101 = No implementado(1) 1110 = No implementado(1) 1111 = No implementado(1)
bit 1 GO/ DONE: Bit de estado de conversión A/D Cuando ADON = 1:
1 = Conversión A/D en progreso 0 = A/D inactivo
bit 0 ADON: Bit de activación A/D
1 = Módulo convertidor A/D habilitado 0 = Módulo convertidor A/D deshabilitado
Capítulo 4. Módulo de Control
ADCON1: REGISTRO DE CONTROL A/D 1U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0
- - VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0
bit 7 bit 0
Leyenda:
R = Bit de lectura W = Bit de escritura U = Bit o i ple e tado, se lee co o
-n = Valor en POR = Bit activado = Bit desactivado x = Bit es desconocido
bit 7-6 No implementado: Se lee co o
bit 5 VCFG1: Bit de Configuración de Voltaje de Referencia (VREF – FUENTE) 1 = VREF– (AN2)
0 = VSS
bit 4 VCFG1: Bit de Configuración de Voltaje de Referencia (VREF + FUENTE) 1 = VREF+ (AN3)
0 = VDD
bit 3-0 PCFG3:PCFG0: Bits de Control de Configuración de Puertos A/D:
PCFG3: PCFG0 AN
1 2 AN 1 1 AN 1 0 AN 9 AN 8 AN 7 AN 6 AN 5 AN 4 AN 3 AN 2 AN 1 AN 0
0000(1) A A A A A A A A A A A A A
0001 A A A A A A A A A A A A A
0010 A A A A A A A A A A A A A
0011 D A A A A A A A A A A A A
0100 D D A A A A A A A A A A A
0101 D D D A A A A A A A A A A
0110 D D D D A A A A A A A A A
0111(1) D D D D D A A A A A A A A
1000 D D D D D D A A A A A A A
1001 D D D D D D D A A A A A A
1010 D D D D D D D D A A A A A
1011 D D D D D D D D D A A A A
1100 D D D D D D D D D D A A A
1101 D D D D D D D D D D D A A
1110 D D D D D D D D D D D D A
1111 D D D D D D D D D D D D D
A = Entrada Analógica D = E/S Digital
Capítulo 4. Módulo de Control
ADCON2: REGISTRO DE CONTROL A/D 2R/W-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0
ADFM - ACQT2 ACQT1 ACQT0 ADSC2 ADSC1 ADSC0
bit 7 bit 0
Leyenda:
R = Bit de lectura W = Bit de escritura U = Bit no i ple e tado, se lee co o
-n = Valor en POR = Bit activado = Bit desactivado x = Bit es desconocido
bit 7-6 ADFM: Bit de Selección de Formato de Resultado A/D 1 = Justificado a la derecha
0 = Justificado a la izquierda bit 6 No implementado: Se lee co o
bit 5-3 ACQT2:ACQT0: Bits de Selección de Tiempo de Adquisición 111 = 20 TAD
110 = 16 TAD 101 = 12 TAD 100 = 8 TAD 011 = 6 TAD 010 = 4 TAD 001 = 2 TAD 000 = 0 TAD(1)
bit 0 ADSC2:ADSC0: Bits de Selección de Reloj de Conversión A/D 111 = FRC (reloj derivado del oscilador RC A/D)(1)
110 = FOSC/64 101 = FOSC/16 100 = FOSC/4
011 = FRC (reloj derivado del oscilador RC A/D)(1) 010 = FOSC/32
001 = FOSC/8 000 = FOSC/2
Capítulo 4. Módulo de Control
Como puede observarse, estos últimos registros son programados para configurar las diversas características del convertidor A/D. El registro ADCON0 controla la operación del módulo convertidor y se utiliza para seleccionar los canales analógicos del microcontrolador a emplear y para habilitar o deshabilitar el convertidor. Otro bit importante de este registro, es el correspondiente a GO/DONE, el cual, permite dar inicio a la conversión y monitorearla para conocer el momento en que ésta ha finalizado. El registro ADCON1 configura las funciones de los pines de los puertos asociados al convertidor A/D, una de éstas, es la posibilidad, antes mencionada, de usar un voltaje de referencia (VREF)
para realizar las conversiones. El registro ADCON2 configura la frecuencia del reloj de conversión A/D, el tiempo de adquisición programado y la justificación, ya sea derecha o izquierda, del resultado obtenido en la conversión, tal y como se indicó en la Figura 4.8.
Se ha mencionado que, dentro del proceso de conversión A/D, si no se desea utilizar el voltaje de alimentación del microcontrolador como voltaje de referencia, puede hacerse uso de un voltaje externo como referencia. Esta tensión puede ser tanto positiva (VREF+) como
negativa (VREF-) y debe ser alimentada en los pines del microcontrolador que permiten tal
operación (pines 4 y 5). Por medio de éste voltaje de referencia, además de la resolución de 10 bits que posee el PIC18F4550, se establece el tamaño de paso (stepsize). Dado que la
resolución del convertidor de este microcontrolador es de 10 bits, el tamaño de paso es igual a VREF/1024, ya que, 210 = 1024. De esta manera, si, por ejemplo, el voltaje de
referencia se elige igual a +5V, entonces el tamaño de paso es de aproximadamente 4.89mV, según la operación que se muestra a continuación:
5V
1024 ≈ 0.00489 V≈ 4.89 mV
Capítulo 4. Módulo de Control
mismo modo, si el voltaje de entrada es de 3V, el convertidor generará una salida de 3/0.00489 = 613. La Tabla 4.3 muestra la relación entre algunos voltajes de referencia más comúnmente utilizados y el tamaño de paso para un convertidor con resolución de 10 bits.
Tabla 4.3 Relación entre VREF y el tamaño de paso para un convertidor A/D de 10 bits
VREF (V) Rangos de voltaje (V) Tamaño de paso (mV)
5.00 0 a 5 4.88
4.096 0 a 4.096 4
3.0 0 a 3 2.93
2.56 0 a 2.56 2.5
2.048 0 a 2.048 2
1.28 0 a 1.28 1.25
1.024 0 a 1.024 1
Finalmente, a continuación se enlistan los pasos que deberían llevarse a cabo al realizar una conversión A/D con el microcontrolador:
1. Configurar el módulo A/D:
Configurar los puertos de entrada analógicos requeridos (bits TRISA, TRISB o TRISE).
Configurar el voltaje de referencia y las entradas y salidas digitales (ADCON1).
Seleccionar los canales A/D (ADCON0).
Seleccionar el tiempo de adquisición y el reloj de conversión (ADCON2).
Habilitar el módulo A/D (ADCON0). 2. Configurar interrupciones A/D (si se desea).
Capítulo 4. Módulo de Control
6. Leer los registros asociados al resultado de la conversión A/D (ADRESH:ADRESL).
7. Para la siguiente conversión, repetir los pasos 1 y 2, si así se requiere. Es necesario esperar un mínimo de 3 TAD antes de que la siguiente conversión comience.
4.2.1.3 Interfaz Bus Serie Universal (USB)
Como se mencionó con anterioridad, el microcontrolador PIC18F4550 incorpora una interfaz compatible con USB para velocidad completa y baja velocidad, que permite la comunicación entre la PC y el microcontrolador.
Las especificaciones y datos técnicos importantes acerca del protocolo USB y que permiten una mayor comprensión de la información que se manejará a partir de ahora, pueden consultarse en el Anexo que se encuentra en la parte final del presente trabajo y en documentación relacionada.
La interfaz USB de un microcontrolador PIC18F4550 se muestra en la Figura 4.10. Como puede observarse, la interfaz es muy simple. Además de un voltaje de alimentación (V+) y el pin conectado a tierra (GND), se requiere la conexión de sólo dos pines al conector USB (Data+ o D+ y Data- o D-). El microcontrolador se alimenta por medio de la energía que recibe del puerto USB de la computadora.
Capítulo 4. Módulo de Control
Figura 4.10 Interfaz USB del PIC18F4550
La operación del módulo USB se configura utilizando tres registros de control, y un total de veintidós registros se utilizan para gestionar las transacciones USB. La configuración de todos estos registros es una tarea muy compleja y, por lo tanto no es cubierta por éste trabajo. Sin embargo, un conjunto de herramientas incluidas en el compilador al que se hace referencia en el capítulo 5 del presente documento, facilita el empleo de la interfaz USB integrada en el microcontrolador.
RA0/AN0 2 RA1/AN1 3 RA2/AN2 4 RA3/AN3 5 RA4 6 RA5 7 RA6/OSC2 14 OSC1 13 RB0 33 RB1 34 RB2 35 RB3 36 RB4 37 RB5 38 RB6 39 RB7 40 RC0 15 RC1 16 RC2 17 VUSB
18 RC4RC5 23
24 RC6 25 RC7 26 RD0 19 RD1
20 RD2RD3 21
Capítulo 4. Módulo de Control
Figura 4.11 Resumen de periféricos y opciones USB del microcontrolador PIC18F4550
4.3 Adquisición de datos
El término adquisición de datos (Data Acquisition o DAQ), describe el proceso que
Capítulo 4. Módulo de Control
A/D, registro y control, a fin de alimentar las señales digitales que son muestreadas en el sistema de computación.
Por medio de un software, la computadora controla los datos de adquisición que llegan a través del microcontrolador. En este proyecto, el microcontrolador estará enviando constantemente señales digitales (después de haber llevado a cabo el proceso de conversión A/D) que contienen los datos provenientes de los sensores a la computadora, permitiendo así, su posterior procesamiento.
4.4 Acondicionamiento de señales
La señal de salida del sensor de un sistema de medición en general, se debe procesar de una forma adecuada para la siguiente etapa de la operación. La señal puede, por ejemplo, ser demasiado pequeña, y sería necesario amplificarla; podría contener interferencias que eliminar; ser no lineal y requerir su linealización; ser analógica y requerir su digitalización; ser digital y convertirla en analógica; consistir en un cambio de voltaje y requiera convertirse en un cambio de corriente de magnitud adecuada, etcétera. A todas estas modificaciones de la señal original, se les designa en general con el término acondicionamiento de señal.
4.4.1 Acondicionamiento de señales de entrada al microcontrolador
Capítulo 4. Módulo de Control
Adicionalmente, también debe considerarse el hecho de que la salida del microcontrolador sea utilizada, quizás, para operar un actuador, que también requeriría una interfaz adecuada. Si el actuador requiere una señal analógica, la salida digital del microprocesador deberá convertirse en señal analógica. Podría también presentarse la necesidad de una protección para impedir que las señales que acaban de salir, retornen al mismo puerto de salida y que, seguramente dañen al microcontrolador.
Como ya se ha mencionado con anterioridad, el microcontrolador PIC18F4550 está provisto de un módulo convertidor A/D que consta de 13 canales. Aunque el convertidor A/D del microcontrolador simplifica las tareas de conversión de señales, en ocasiones es necesario realizar un acondicionamiento de señal previo, debido a que, la mayoría de los sensores sólo producen señales de salida muy pequeñas, a veces de unos cuantos milivolts. Este tipo de señales son insuficientes para convertirlas de analógicas a digitales en forma directa, por lo que es recomendable que primero, sean amplificadas para así mejorar la calidad de la conversión.
4.5 Circuito acondicionador de señal
Capítulo 4. Módulo de Control
SALIDA (A)
hacerse uso del voltaje proveniente del puerto USB de la PC y que alimenta al microcontrolador, eliminando así el inconveniente que presenta el LM741.
El integrado LM358 internamente cuenta con dos amplificadores operacionales, de los cuales, cada uno tiene dos entradas: entrada inversora (-) y entrada no inversora (+). La salida depende directamente del conexionado que se haga entre estas entradas. Además, el integrado tiene otra entrada correspondiente al voltaje de alimentación (V+). Si se desea obtener mayor información sobre éste integrado, puede consultarse la hoja de datos respectiva. La Figura 4.12 muestra las conexiones de las terminales del amplificador operacional LM358.
Figura 4.12 Disposición de las terminales del amplificador operacional LM358
Por medio de éste integrado, pueden realizarse diversas configuraciones, las cuáles se hacen básicamente conectando resistores a las terminales del mismo y que se diferencian precisamente por el tipo de arreglo en el que estén dispuestos estos resistores, consecuentemente cada una de ellas producirá resultados distintos, en la ganancia de la amplificación principalmente.
ENTRADA (A) INVERSORA ENTRADA (A) NO INVERSORA
SALIDA (B)
ENTRADA (B) INVERSORA ENTRADA (B) NO INVERSORA GND
Capítulo 4. Módulo de Control
Amplificador inversor.
El circuito amplificador con ganancia constante que se utiliza más comúnmente y que se muestra en la Figura 4.13, es el amplificador inversor, esto debido a que cuenta con una buena estabilidad en frecuencia. La salida se obtiene al multiplicar la entrada por una ganancia fija o constante, establecida por el resistor de entrada R1 y por el resistor de retroalimentación R2 (esta salida también se invierte a partir de la entrada). Su funcionamiento se describe por medio de la siguiente ecuación:
��
��
=−�2
�1
Ecuación característica de la ganancia de voltaje de un amplificador inversor.
Figura 4.13 Circuito del amplificador operacional en configuración inversora 3
2
1
8
4
LM358N
R
R
VCC
V V
1
2
Capítulo 4. Módulo de Control
Amplificador no inversor.
La conexión de la Figura 4.14 muestra el circuito que funciona como un amplificador no inversor o multiplicador de ganancia constante.
Figura 4.14 Circuito del amplificador operacional en configuración no inversora
Del circuito de la Figura 4.14, se obtiene la ecuación que describe la ganancia de voltaje del circuito amplificador no inversor que se muestra a continuación:
��
��
=�2
�1 + 1
Ecuación característica de la ganancia de voltaje de un amplificador no inversor. 3
2
1
8
4
LM358N
R
R
VCC
Vi 1 Vo
Capítulo 4. Módulo de Control
Amplificador seguidor.
Un circuito amplificador seguidor ofrece un medio para acoplar una señal de entrada con una carga, por medio de una etapa que cuente con una ganancia de voltaje unitaria, sin inversión de fase o polaridad y que actúe como un circuito ideal con una impedancia de entrada muy alta y una impedancia de salida baja. La Figura 4.15 presenta la conexión que permite esta operación de acoplamiento mediante un amplificador.
Figura 4.15 Circuitodel amplificador en configuración de seguidor
De acuerdo con la descripción y el circuito anteriores, el voltaje de salida se encuentra entonces determinado por la siguiente ecuación:
��=��
Ecuación característica de la ganancia de voltaje de un amplificador seguidor. 3
2
1
8
4
LM358N VCC
V
Vi
Capítulo 4. Módulo de Control
Cabe mencionar que los amplificadores operacionales tienen una característica primordial: alta impedancia de entrada (idealmente infinita) y baja impedancia de salida (idealmente igual a cero), características que también los hace útiles dentro de muchas más aplicaciones.
Demás configuraciones posibles para el amplificador operacional y detalles adicionales, no serán tratados en el presente trabajo, si se desea obtener mayor información, puede consultarse bibliografía especializada en el tema.
4.6 Aislamiento de señales eléctricas y etapa de potencia
Capítulo 4. Módulo de Control
Figura 4.16 Circuito básico de potencia y aislamiento de señales
4.7 Sensores
Con anterioridad, se ha mencionado el término sensor para referirse a un dispositivo que, básicamente detecta y mide una magnitud de un fenómeno físico y además genera una señal de salida, usualmente de tipo eléctrico. El dispositivo opuesto, es un actuador, el cual convierte una señal (normalmente eléctrica) para llevar a cabo alguna acción, por lo general mecánica.
Al seleccionar un sensor para una aplicación en particular, se deben considerar varios factores:
1. El tipo de medición que se requiere, por ejemplo, la variable que se va a medir, su valor nominal, el rango de valores, la exactitud, velocidad de medición y confiabilidad requeridas y, las condiciones ambientales en las que se realizará la medición.
2.2k
Relevador
Capítulo 4. Módulo de Control
2. El tipo de salida que se requiere del sensor, lo cual determinará las condiciones de acondicionamiento de la señal (descritas anteriormente), a fin de contar con señales de salida idóneas para la medición.
3. Con base en lo anterior se pueden identificar algunos posibles sensores, considerando rango, exactitud, linealidad, velocidad de respuesta, confiabilidad, facilidad de mantenimiento, duración, requisitos de alimentación eléctrica, disponibilidad y costo.
4.8 Circuitos sensores del módulo de control
La implementación del presente proyecto requiere del empleo de sensores para realizar el control de las variables que intervienen en el acuario y que se han mencionado anteriormente. A partir de los puntos expuestos en el tema 4.7, a continuación se describen los sensores de los cuales se hace uso en ésta aplicación.
4.8.1 Sensor de temperatura
Aunque existe una gran variedad de sensores de temperatura en el mercado, dentro de ésta aplicación se determinó que el integrado LM35 (Figura 4.17), fabricado por National Semiconductor, es idóneo para ser implementado. Éste tipo de sensores son comúnmente utilizados en diferentes aplicaciones, en las cuales, sea requerida la medición de temperatura, debido a que, en general y, según especificaciones del fabricante, cuenta con las siguientes características:
Capítulo 4. Módulo de Control
Bajo costo.
Opera desde 4 hasta 30 voltios.
Corriente de drenaje menor a 60 µA.
Bajo grado de auto-calentamiento (0.08 °C).
No linealidad típica: de sólo ±¼ °C.
Baja impedancia de salida (0.1Ω para una carga de 1mA).
Capítulo 4. Módulo de Control
Figura 4.17 Sensor de Temperatura LM35
4.8.2 Sensor de pH.
Capítulo 4. Módulo de Control
embargo, en caso de ser necesario, podría realizarse un circuito con una naturaleza similar a la del sensor de temperatura que se explicó con anterioridad.
4.8.3 Sensor de nivel
El circuito implementado como sensor de nivel en el presente proyecto, utiliza dos electrodos, uno de ellos colocado de tal forma que permite detectar el nivel bajo del recipiente, el otro electrodo por el contrario, se coloca a una altura que permita detectar el nivel alto del agua, el cual se desea permanezca constante.
Además de estos electrodos, se emplea un circuito integrado 74HC132, el cual se compone de cuatro compuertas NAND de dos entradas con disparador Schmitt (puede consultarse la hoja de especificaciones respectiva si se desea obtener más información). Por medio de este integrado se construye un oscilador, el cual a su vez produce una corriente de AC que circula a través de dos capacitores que se encargan de alimentar a los electrodos mencionados con anterioridad (la corriente de AC generada previene el efecto de electrólisis que se presentaría al aplicar corriente de CD a los electrodos, ocasionando la corrosión de los mismos).