instrumentación de un sistema para el monitoreo de pozos de...

53
División de Ciencias Básicas e Ingeniería Departamento de Ingeniería Eléctrica Licenciatura de Ingeniería Electrónica Instrumentación de un sistema para el monitoreo de pozos de explotación de agua potable Desarrollado por: López García Fernando 200215526 Hernández Mora Raúl 200215241 Asesor: Martínez González Alejandro México D.F. a Julio del 2004

Upload: letuong

Post on 25-Sep-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

División de Ciencias Básicas e Ingeniería

Departamento de Ingeniería Eléctrica

Licenciatura de Ingeniería Electrónica

Instrumentación de un sistema para el monitoreo de pozos de explotación de agua potable

Desarrollado por:

López García Fernando 200215526 Hernández Mora Raúl 200215241

Asesor: Martínez González Alejandro

México D.F. a Julio del 2004

CONTENIDO OBJETIVO.....................................1 INTRODUCCIÓN.................................1 ESTADO DEL ARTE..............................4 DESARROLLO...................................5 PRUEBAS Y RESULTADOS EXPERIMENTALES..........6 CONCLUSIONES................................16 ANEXO 1.....................................18 ANEXO 2.....................................21 ANEXO 3.....................................27 ANEXO 4.....................................45 BIBLIOGRAFÍA................................49

Universidad Autónoma Metropolitana Ingeniería Electrónica

1

Objetivo: Desarrollar un sistema de instrumentación para la telemetría de parámetros para un pozo de explotación de agua potable, como son : nivel de agua del pozo, conductividad del agua, medición de PH, así como mediciones indirectas tales como velocidad y dirección del viento, presión atmosférica y precipitación pluvial. Introducción: La disponibilidad de los recursos hídricos para los diferentes usos, no sólo depende de los volúmenes de agua superficial y subterránea, sino también de la calidad de estos recursos. Sin embargo, aún no conocemos la potencialidad de este recurso: bajo el suelo las minas no son solo de oro y, en nuestra geología las formaciones son una gran despensa de agua dulce. El tema del recurso hídrico presenta gran diversidad de aspectos: variado tipo de fuentes de suministro, diversidad de usos y cuantía de la demanda, distintas condiciones de aprovechamiento, incidencia del uso del recurso sobre el medio ambiente, calidades del líquido, factores climáticos, variables culturales, participación del sector público y privado en los procesos de estudio, inversión y explotación del agua entre otros.

La provisión de sistemas confiables de abastecimiento de agua potable es actualmente un objetivo para todos los países del mundo como parte de muchos programas internacionales.

En la actualidad hay un incremento de la demanda de agua, la cual está asociada a problemas de cantidad y calidad. El agua subterránea, en ciertas condiciones, constituye un importante recurso de abastecimiento de agua para distintos usos. En algunas ocasiones, las características propias del sistema natural determinan que la cantidad, accesibilidad y en especial la calidad del agua subterránea se torne inadecuada para algunos o todos los usos requeridos. Por lo tanto, es importante dejar claro que el agua subterránea no siempre es sinónimo de recurso disponible. En muchas ocasiones, los recursos hídricos subterráneos suelen perder tal categoría al estar afectados por distintas actividades contaminantes que

Universidad Autónoma Metropolitana Ingeniería Electrónica

2

incorporan al agua subterránea una variedad de substancias tóxicas (metales pesados, compuestos orgánicos, organismos patógenos, etc.).

Por ello la necesidad de monitorear las características de las aguas subterráneas determinando así su calidad. Aunque algunas veces estas mediciones se tienen que observar acudiendo hasta los pozos acuíferos. Para esto se plantea que dichas mediciones sean transmitidas a los laboratorios donde se analizan estas propiedades, teniendo así un acceso más rápido a esta información.

La transmisión de esta información puede ser llevada a cabo por medio de dispositivos inalámbricos que operen en rangos de frecuencia que no requieran de proceso legal de regularización que en el caso de México, la entidad reguladora del radio espectro es la Comisión Federal de Telecomunicaciones (COFETEL, http://www.cft.gob.mx ) y la Secretaría de Comunicaciones y Transportes (SCT, http://www.sct.gob.mx ). para poder ocupar un canal en el espacio electromagnético.

La asignación de bandas del espectro varia de país a país y en el caso de México pueden consultar el cuadro de atribución de frecuencias en el Área de Ingeniería y Tecnología de la COFETEL en la siguiente dirección: http://www.agitec.gob.mx/cuadro/index_espectro.html .

Cada subconjunto o banda de frecuencias dentro del espectro electromagnético tiene propiedades únicas que son el resultado de cambios en la longitud de onda. Por ejemplo, las frecuencias medias (MF, Medium Frequencies) que van de los 300 kHz a los 3 MHz pueden ser radiadas a lo largo de la superficie de la tierra sobre cientos de kilómetros, perfecto para las estaciones de radio AM (Amplitud Modulada) de la región. Las estaciones de radio internacionales usan las bandas conocidas como ondas cortas (SW, Short Wave) en la banda de HF (High Frequency) que va desde los 3 MHz a los 30 MHz. Este tipo de ondas pueden ser radiadas a miles de kilómetros y son rebotadas de nuevo a la tierra por la ionosfera como si fuera un espejo, por tal motivo las estaciones de onda corta son escuchadas casi en todo el mundo.

Los estaciones de FM (Frecuencia Modulada) y TV (televisión) utilizan las bandas conocidas como VHF (Very High Frequency) y UHF (Ultra High Frequency) localizadas de los 30 MHz a los

Universidad Autónoma Metropolitana Ingeniería Electrónica

3

300 MHz y de los 300 MHz a los 900 MHz, este tipo de señales debido a que no son reflejadas por la ionosfera cubren distancias cortas, una ciudad por ejemplo. La ventaja de usar este tipo de bandas de frecuencias para comunicaciones locales permite que docenas de estaciones de radio FM y televisoras — en ciudades diferentes — puedan usar frecuencias idénticas sin causar interferencia entre ellas. Para nuestro uso tenemos la frecuencia de 900 MHz la cual esta ubicado en la banda UHF, que dentro de esta banda cae en el rango de los 896-902 MHz en la cual el servicio atribuido por las entidades regulatorias mencionadas arriba es el de servicio móvil terrestre1. En el rango de los 902-928 MHz el servicio atribuido por las entidades regulatorias es el de servicio de aficionado, móvil y fijo1. Para el uso de estos radios no era necesario regularizarse ante las entidades federativas arriba mencionadas para poder transmitir utilizando el espectro electromagnético. La información proporcionada por MAXSTREAM, acerca de las bandas de operación normalizadas en México son:

a) 902-928 MHz para uso de interiores con antenas omnidireccionales y una potencia máxima de30 mW b) 902-928 MHz para uso de exteriores con antenas direccionales con una potencia máxima de 1 W c) 2400-2483.5 MHz para uso de interiores y campus con antenas omnidireccionales y una potencia máxima de 30 mW a 250 mW d) 2450-2483.5 MHz para uso de exteriores con antenas direccionales con una potencia máxima de 1 W

Y sus 9XStream radio modems tienen una potencia de 140mW. Los 24XStream (2.4GHz) tienen una potencia de 55mW

Las características de propagación de las ondas electromagnéticas utilizadas en canales de comunicación como aire, espacio y mar son altamente dependientes de la frecuencia. El espectro electromagnético puede dividirse en tres grandes bandas de frecuencia, cada una con características de propagación dominantes, estas son: propagación de onda terrestre (f < 2MHz), propagación de onda celeste ( 2MHz < f < 30MHz ), propagación línea de vista( f > 30MHz ). Como estos radios operaban a esta frecuencia de

1: VER ANEXO 1

Universidad Autónoma Metropolitana Ingeniería Electrónica

4

900MHz el cual esta dentro del rango de propagación línea de vista, tenemos que una característica importante de la propagación línea de vista es que la antena receptora debe ver a la antena transmisora. Esta característica implica en muchas ocasiones, la instalación de torres muy altas para garantizar que el camino de la señal se encuentre por encima del horizonte terrestre.

Era necesario además una interfaz que permitiera comunicar al radio con cada uno de los instrumentos de medición, esta interfaz tendría la función primeramente de recibir la información analógica que proporcionan los instrumentos de medición, luego realizar la conversión analógico digital, para posteriormente transmitirla en forma serial, ya que la forma de comunicación del radio con cualquier equipo es a través de su puerto serial, y la información que reciben debe ser digital, además que esta controlara la transmisión de dicho radio, por lo que se utilizo un microcontrolador que cubriera las características para este fin.

Estado del arte

Como se menciona arriba, para este proyecto fue necesario utilizar dos radios con los cuales ya se contaba, estos radios son XSTREAM OEM 900 MHZ2, los cuales reciben la información por un puerto serial RS-232 y este a su vez se conectan a unas antenas Yagi marca Cushcraft las cuales se adecuaban a las características de transmisión de los radios, estas antenas operan en el rango de los 902 a 928 MHz tiene un alcance de 20 Km. Radio XSTREAM OEM 900 MHZ.

Universidad Autónoma Metropolitana Ingeniería Electrónica

5

Antena Yagi Cushcraft

El microcontrolador utilizado es el PIC18F6720 de la Microchip, el cual cuenta con las características que se deseaban ya que cuenta con puertos seriales con los que se comunica con los radios, entradas analógicas y un conversor analógico/digital. Para este proyecto se adaptó una tarjeta (que tiene un propósito diferente) que utiliza este microcontrolador, con la cual no se tuvo conflicto ya que básicamente tanto el puerto serial como algunas entradas analógicas estaban habilitadas en la tarjeta. Tarjeta de desarrollo del PIC18F6720

Desarrollo

Para la primera parte del proyecto, se probó el funcionamiento de los radios XSTREAM OEM 900 MHZ2, configurándolos de la forma correcta y estableciendo un

2: VER ANEXO 2

Universidad Autónoma Metropolitana Ingeniería Electrónica

6

enlace a distintas distancias, determinado así su alcance, se sabe que tiene un alcance aproximado de 20 Km., pero no se probó a esa distancia, la distancia máxima a la que se probaron fue de 5 Km. aproximadamente, obteniendo buenos resultados ya que los enlaces se realizaron con éxito, solo queda la duda de si a los 20 Km. se realizaría un enlace con éxito, no se realizó por que básicamente lo que se buscaba era controlar los radios con el microcontrolador y en eso se enfocó nuestra atención y realmente la pruebas que se realizaban era colocando las antenas a una distancia máxima de 5 m, esto por falta de espacio en área de trabajo. La distancia no interesaba tanto ya que como se mencionó lo que se quería lograr era controlar dichos radios con este microcontrolador. Esta fue la segunda parte del proyecto, en la cual primeramente se reviso el manual de este microcontrolador, para ver su funcionamiento, y posteriormente la configuración de este el cual debía realizar las siguientes funciones: entrada de una señal analógica por alguno de sus canales analógicos, convertir dicha señal analógica a digital, transmitir esta señal digital en forma serial a uno de los radios. La programación del algoritmo que realizara estas funciones se hizo con el MPLAB ID que es un entorno de desarrollo para microcontroladores de Microchip. Lográndose con éxito esta configuración. La forma de cómo se realizo lo antes descrito aquí se muestra en el siguiente punto que son pruebas y resultados experimentales.

Pruebas y resultados experimentales.

En la primera parte de este proyecto lo que se hizo básicamente fue probar el alcance de los módulos XSTREAM OEM 900 MHZ. Estos radios contaban con un software de prueba, con el cual se configuraban los radios con comandos AT2. Para esta parte lo que se hizo fue usar el software MAXSTREAM-CTU proporcionado por MAXSTREAM para dar los parámetros que por default se les asigna a los radios, checando que ambos tuvieran la misma dirección, por que de otro modo no se realizaría una transmisión correcta y ninguno recibiría la información que se le enviara. A continuación se muestra como se habilitaron estos radios:

1.- Se utilizó el puerto COM de una PC para comunicarse con el radio, a su vez el radio se conectó a la antena Yagi, como se muestra en la Figura A.

2: VER ANEXO 2

Universidad Autónoma Metropolitana Ingeniería Electrónica

7

Figura A

2.- Con el software proporcionado se configuraron los radios.

Figura B

a.- En la ventana Setup se habilitó el puerto en el que se conectó el radio en caso de que la PC tenga dos puertos COM y el baud rate al que se desea transmitir que para estos radios es de 9600, los otros parámetros se dejaron tal y como los proporciona el software y solo se modifica la parte A(lo que esta dentro del recuadro) como se ve en la Figura C.

Universidad Autónoma Metropolitana Ingeniería Electrónica

8

Figura C

b.- En la ventana de Configuration se obtienen los parámetros que por default da el software. La imagen muestra la forma como se configuró:

Figura D

En la figura D se puede ver que en la ventana de Module Address (DT) el valor asignado es un cero, por lo cual el

Universidad Autónoma Metropolitana Ingeniería Electrónica

9

otro radio tendrá el mismo valor, para que pueda haber una comunicación entre ambos radios, además estaba también habilitado el control de flujo, esto se ve en la ventana RTS/CMD (RT), ya que ambos radios utilizaban estos bits al estar conectados ambos a una PC, lo que no sucederá con el microcontrolador, por lo que la configuración de los radios cambiara como se vera mas adelante, por lo tanto para esta parte de la prueba basta con esta configuración.

c.- Ya con la configuración se inicio la transmisión, presionando Start en la ventana de Com Test

Figura E

En la figura E se nos muestra como el software da informacion sobre la transmisión, esta nos dice cuantos mensajes llegan bien y cuantos mal, el porcentaje de la transmisión que se esta llevando correctamente.

Universidad Autónoma Metropolitana Ingeniería Electrónica

10

Figura F

La primera prueba de transmisión se realizó con las antenas Yagi a una distancia máxima de cuatro metros, a esta distancia no importó tanto la polarización ya que estaban a una distancia muy corta lo que no fue así para las distancias mayores, para esta distancia no debería haber ningún problema de transmisión, y así fue, la transmisión se llevó sin problemas, la siguiente prueba se realizó a aproximadamente 100 m y aquí si las antenas se polarizaron verticalmente como lo indica el fabricante, aunque estas se llegaban a mover por no tener un soporte en el cual se fijaran pero tampoco se tuvo problema para transmitir.

El mayor problema se presentó cuando se realizó la transmisión a una distancia de aproximadamente 5 Km., esto fue porque la forma de propagación de las ondas electromagnéticas que emitía la antena por ser una frecuencia mayor a 30MHz, y en este rango mayor a esta frecuencia esta dentro de la banda de propagación línea de vista, y en este tipo de propagación la antena receptora debe ver a la antena transmisora. Fue por ello el contratiempo, ubicar la posición de la antena y apuntarla correctamente. Ya ubicando la posición la transmisión se inicio, pero en el momento en que la antena se desviaba un poco se perdía comunicación

Universidad Autónoma Metropolitana Ingeniería Electrónica

11

hasta que se orientara nuevamente, esto por no tener soportes donde fijar la antena. Con esto probamos el funcionamiento de las antenas, además de la forma de configurarse.

Para la segunda parte, ya teniendo los radios funcionado, se tenia que realizar una interfaz entre los radios y los instrumentos de medición (ver figura G) ya que estos solo generaban mediciones analógicas, y había que convertirlas a digitales y además ya convertidas, poder transmitirlas en forma serial, ya que es la forma en la que los radios reciben la información. Como se contaba con una tarjeta la cual contenía un microcontrolador, el PIC18F67203, la cual tenía habilitado los puertos necesarios para nuestro uso, como lo son el puerto serial, y algunas entradas analógicas. Esto nos favoreció ya que no se tuvo que construir otra tarjeta sino que solo hubo que adaptar un poco la tarjeta sin que esto afectara el propósito original con la cual fue hecha.

Figura G

Lo que se hizo fue programar el microcontrolador, habilitando una entrada analógica, el convertidor analógico digital, habilitar el puerto serial. La configuración se llevo de la siguiente manera:

-Se utilizó el compilador MPLAB ID v 6.4 para realizar el código.

3: VER ANEXO 3

Universidad Autónoma Metropolitana Ingeniería Electrónica

12

-Se consultó el manual del microcontrolador para ver sus características y realizar así la configuración de los módulos a ocuparse como lo son el USART, el convertidor A/D, y las entradas analógicas.

A continuación se muestra la configuración de los módulos.

Modulo USART3

El USART puede ser configurado de la siguiente forma: -Asíncrona (full-duplex) -Sincronía-maestra (half-duplex) -Sincronía-esclava (half-duplex) La configuración que nos interesa es la transmision/recepcion asíncrona por ello se muestran los pasos para habilitar cada una de ellas. Pasos para habilitar una transmisión asíncrona (USART2): 1.-Inicializar el registro SPBRG2 con el baud rate apropiado. Si se desea un alto baud rate poder a uno el BRGH 2.- Habilitar el puerto serial asíncrono poniendo en cero el bit SYNC y en uno el bit SPEN. 3.- Si se desean interrupciones, poner en uno el bit TX2IE en el registro PIE. 4.- Si se desean 9 bits de transmisión, poner en uno el bit TX9. puede ser usado como bit de datos/direcciones. 5.- Habilitar la transmisión poniendo en uno el bit TXEN, el cual pondrá en uno el bit TX2IF. 6.- Si se seleccionan 9 bits de transmisión, el noveno bit es cargado en el bit tx9d.

7.- Cargar el dato en el registro TXREG2 (empezar transmisión)

Pasos para habilitar una recepción asíncrona: 1.- Inicializar el registro SPBRG2 con el baud rate apropiado. Si se desea un alto baud rate poder a uno el BRGH 2.- Habilitar el puerto serial asíncrono poniendo en cero el bit SYNC y en uno el bit SPEN. 3.- Si se desean interrupciones, poner en uno el bit RC2IE. 4.- Si se desean 9 bits de recepción, poner en uno el bit CX9 3: VER ANEXO 3

Universidad Autónoma Metropolitana Ingeniería Electrónica

13

5.- Habilitar la recepción poniendo en uno el bit SCREN. 6.- El bit de bandera RC2IF será puesto en uno cuando la recepción es completa y una interrupción puede ser generada si se pone en uno el bit RC2IE. 7.- Leer el registro RCSTA2 para obtener el noveno bit ( si esta habilitado). Y determinar si algún error ocurre durante la recepción. 8.- Leer los 8 bits de datos recibidos, leyendo el registro RCREG2 9.- Si hay algún error, limpiar el error limpiando el bit SCREN 10.- Si se usa interrupciones, es necesario que los bits GIE

y el PIEI del registro INTCON sean uno.

Modulo convertidor A/D de 10 Bits3

Paso para realizar una conversión: 1.- Configurar el modulo A/D • Configurar pines analógicos, voltaje de referencia (ADCON1) • Seleccionar canales de entrada A/D (ADCON0) • Seleccionar reloj de conversión A/D (ADCON2) • Encender modulo A/D (ADCON0) 2. Configurar interrupciones A/D (si se desea): • Limpiar bit ADIF • Poner en uno bit ADIE • Poner en uno bit GIE 3. Esperar el tiempo de adquisición requerido. 4. Iniciar conversión: • Poner en uno el bit GO/DONE (registro ADCON0) 5. Esperar a que la conversión A/D sea completa, por: • Polling, checando cuando el bit GO/DONE es limpiado ó • Esperando a que se active la interrupción A/D 6. Leer el resultado A/Den el registro (ADRESH:ADRESL); limpiar bit ADIF, si se requiere. 7. Para la siguiente conversión, ir al paso 1 o paso 2, como se requiera. El tiempo de conversión A/D por bit es definido como TAD. Una máxima espera de 2 TAD es requerida antes de la siguiente adquisición.

3: VER ANEXO 3

Universidad Autónoma Metropolitana Ingeniería Electrónica

14

Modulo puertos de entrada/salida3

Se configuraron únicamente dos puertos de los 8 que tiene ya que en estos estaban los canales analógicos y la transmisión y recepción serial.

Puerto F.

Este puerto es de 8 bits y fue configurado como entrada analógica ya que como estos bits están los canales analógicos por donde entra la señal, para este caso ocupamos el canal 6(AN6) que es el bit 1 del puerto F.

Puerto G

Este puerto se configuro como salida el bit 2 ya que en este bit esta al el bit RX(recepción) y el bit 1 como entrada porque en este esta el bit TX(transmisión)

Para realizar este código se consultó un tutoría que nos ayudara a utilizar MPLAB ID, el cual proporciona un código fuente en el cual nos basamos para empezar un código propio. Este tutoríal se encuentra consultado la siguiente liga http://www.odisea2010.com/modules.php?op=modload&name=Downloads&d_op=viewdownload&cid=94, esto fue suficiente para realizar el código el cual realiza el siguiente proceso obtiene una señal analógica, la convierte y la transmite por su puerto serial.

El código lo puede ver en el anexo 4.

Como mencionamos anteriormente el puerto serial de este microcontrolador solo usa los bits Rx, y Tx, y tierra, por lo que los bits RTS y CMD no, por lo tanto no era necesario tener un control de flujo. así que la configuración de los radios se hizo como se muestra en la Figura H. Únicamente modificando algunos parámetros en la ventana Configuration. Esta configuración fue para ambos radios.

3: VER ANEXO 3

Universidad Autónoma Metropolitana Ingeniería Electrónica

15

Figura H

A continuación se muestra un esquema de la conexión de los radios.

Figura I

Como se ve en el esquema un instrumento de medición es comunicado con el microcontrolador a través de uno de sus canales analógicos habilitado, en este caso es el canal 6, el microcontrolador realiza el proceso de conversión analógico/digital, y comunica la información ya en forma digital a uno de los radios a través de su puerto serial, esta información es radiada por la antena hasta llegar a la antena receptora de aquí al radio este a su vez lo comunica a una PC, en la cual se observa esta información.

Universidad Autónoma Metropolitana Ingeniería Electrónica

16

Conclusiones

Nos deja satisfechos el estar concientes que el desarrollo de este proyecto puede ser una herramienta útil para la telemetría de parámetros para pozos de explotación de agua potable. Ya que este sistema desarrollado llega a satisfacer este tipo de necesidades, pues cuenta con varios canales analógicos(del PIC18F6720) por los cuales la información analógica(nivel de agua del pozo, conductividad del agua, medición de PH ) generada por los instrumentos de medición ubicados en dichos pozos y otras mediciones(velocidad y dirección del viento, presión atmosférica y precipitación pluvial) entran al sistema y este a su vez la digitaliza enviándola posteriormente a través de un radio XSTREAM 900 MHz. y esta llega a donde se encuentre ubicado el modulo receptor( radio XSTREAM 900 MHz.), el cual manda la información a una PC donde se registra la información que llega. Este destino puede ser un laboratorio donde se este monitoreando toda la información que los equipos de medición estén registrando.

Podemos ver como lo muestra la figura la solución dada en este proyecto para la telemetría de pozos de agua potable, es una solución practica que cubre las necesidades para obtener información de estos pozos a distancia. Claro que este

Universidad Autónoma Metropolitana Ingeniería Electrónica

17

sistema tiene que ser mejorado a un mas, pero podemos ver con el avance de esta solución que corresponde a este proyecto que el desarrollo de este sistema va por buen camino.

Además realizar este proyecto nos ayudó a entender la gran aplicación que tienen los microcontroladores para controlar dispositivos, su aplicación en la industria del diseño, la facilidad y flexibilidad que tiene para ser manejados. En este caso el utilizado fue de la familia Microchip y su aplicación en este caso particular fue controlar unos radios.

El aprender a programarlos es una herramienta mas en nuestra formación como estudiantes profesionistas.

Nos dimos una idea del manejo del espectro electromagnético, al tener que investigar si los radio utilizados necesitaban o no autorización para usar el espectro electromagnético y como se dijo con anterioridad estos radios no necesitaban ser regulados por las entidades federativas que lo hacen en México como lo son COFETEL y SCT para hacer uso del espectro electromagnético.

Nos queda un buen sabor de boca el saber que el aprender el manejo de estos microcontroladores y su gran aplicación en la industria del diseño, nos ayudara a desempeñarnos si decidimos seguir en el area de diseño.

.

Universidad Autónoma Metropolitana Ingeniería Electrónica

18

Anexo 1

Notas referentes al uso del rango de frecuencia 896-202 MHz y 902-928 MHz. Para mayor informacion consultar: http://www.agitec.gob.mx/cuadro/index_espectro.html

Rango de Frecuencia 896 - 902 MHz

Ancho de Banda 6 MHz

Servicios Atribuidos

MÓVIL TERRESTRE

Notas MEX

MEX109 MEX120 MEX121 MEX125 MEX126 MEX127

MEX109 Referirse al proyecto de Norma NOM-084-SCT1-1993, que contiene las especificaciones técnicas para la instalación y operación de estaciones destinadas a prestar el servicio móvil de radiocomunicación especializada de flotillas. Bandas 431.3- 433/438.3 - 440 MHz, 475 - 476.2/494.6 - 495.8 MHz, 806 - 821/851 - 866 MHz y 896 - 901/935 - 940 MHz. MEX120 El 16 de junio de 1994, se firmó el Protocolo relativo al uso de las bandas de 806 - 824/851 - 869 MHz y 896 - 901/935 - 940 MHz para el Servicio Móvil Terrestre a lo largo de la frontera común México – Estados Unidos. En este documento se establece un plan común para el uso de frecuencias dentro de los 110 km a cada lado de la frontera; asimismo, se establecen los criterios técnicos para el uso de frecuencias y los procedimientos de coordinación. Por último, se identifican canales de ayuda mutua para seguridad pública. MEX121 El uso y planes de frecuencias de las bandas 806 - 821/851 - 866 MHz 821 - 824/866 - 869 MHz y 896 - 901/935 - 940 MHz, son acordes con las Recomendaciones CCP.III/REC.20 (V-96) y CCP.III/REC.28 (VI-96), aprobadas

Universidad Autónoma Metropolitana Ingeniería Electrónica

19

respectivamente, por la Quinta y Sexta Reunión del Comité Consultivo Permanente III: Radiocomunicaciones de CITEL. MEX125 La banda de 890 - 960 MHz está siendo despejada de los sistemas de microondas que transmiten radiotelefonía multicanal de punto a punto. MEX126 México ha adoptado la designación de las bandas 901 - 902 MHz, 930 - 931 MHz y 940 - 941 MHz para la implementación de Sistemas Personales de Comunicaciones de banda angosta, tal como se describe en la Recomendación CCP.III/REC.18 aprobada por la Quinta Reunión del Comité Consultivo Permanente III: Radiocomunicaciones de CITEL. MEX127 El 16 de mayo de 1995, se firmó el Protocolo relativo al uso de las bandas de 901 - 902 MHz, 930 - 931 MHz y 940 - 941 MHz para los Servicios de Comunicaciones Personales, a lo largo de la frontera común México – Estados Unidos. En este documento se establece un plan común para el uso equitativo de las bandas dentro de los 120 km a cada lado de la frontera; asimismo, se establecen los criterios técnicos para el uso de los canales.

Rango de Frecuencia 902 - 928 MHz

Ancho de Banda 26 MHz

Servicios Atribuidos

FIJO MÓVIL Aficionados S5.150

Notas MEX

MEX19 MEX125 MEX128 MEX130

S5.150 Las bandas: MEX19 El 28 de noviembre de 1988, se

Universidad Autónoma Metropolitana Ingeniería Electrónica

20

13 553 – 13 567 kHz (frecuencia central 13 560 kHz), 26 957 – 27 283 kHz (frecuencia central 27 120 kHz), 40.66 – 40.70 MHz (frecuencia central 40.68 MHz), 902 – 928 MHz en la Región 2 (frecuencia central 915 MHz), 2 400 – 2 500 MHz (frecuencia central 2 450 MHz), 5 725 – 5 875 MHz (frecuencia central 5 800 MHz) y 24 – 24.25 GHz (frecuencia central 24.125 GHz) están designadas para aplicaciones industriales, científicas y médicas (ICM). Los servicios de radiocomunicación que funcionan en estas bandas deben aceptar la interferencia perjudicial resultante de estas aplicaciones. Los equipos ICM que funcionen en estas bandas estarán sujetos a las disposiciones del número S15.13.

publicó en el Diario Oficial de la Federación, el Reglamento para instalar y operar estaciones radioeléctricas del Servicio de Aficionados. MEX125 La banda de 890 - 960 MHz está siendo despejada de los sistemas de microondas que transmiten radiotelefonía multicanal de punto a punto. MEX128 La banda de frecuencias de 902 - 928 MHz está destinada para aplicaciones del servicio fijo y móvil utilizando tecnologías convencionales, cuyas aplicaciones principales son la transmisión de datos de baja velocidad; así como para la operación de sistemas meteorológicos, dando la protección necesaria a los equipos Industriales Científicos y Médicos (ICM). MEX130 Las especificaciones para la instalación y operación de sistemas de radiocomunicación que emplean la técnica de espectro disperso en las bandas de 902 - 928 MHz, 2 450 - 2 483.5 MHz y 5 725 - 5 850 MHz, se establecen en la Norma Oficial Mexicana Emergente, NOM-EM-121-SCT1-1994, publicada el 22 de diciembre de 1994 en el Diario Oficial de la Federación. Para evaluar la factibilidad técnica de emplear también la banda 2 400 - 2 450 MHz para espectro disperso, se realizan estudios de convivencia con los sistemas en operación en México.

Universidad Autónoma Metropolitana Ingeniería Electrónica

21

Anexo 2 RADIO XSTREAM OEM 900MHZ.

EL radio XSTREAM OEM 900 MHZ. es una rápida solución que transfiere cadenas de datos asíncronos sobre el aire entre dos módulos. Esta parte contiene información básica de las formas de operación, configuración y programación de el radio XSTREAM. 2.1 CARACTERÍSTICAS 2.1.1 DIAGRAMA A BLOQUES FIGURA 2.1. DIAGRAMA A BLOQUES INTERNO DEL RADIO XSTREAM .

2.1.2 DESCRIPCIÓN DE LOS PINES DE SEÑAL TABLA 2.1. DESCRIPCIÓN DE LOS PINES DE SEÑAL.

Universidad Autónoma Metropolitana Ingeniería Electrónica

22

Todos los pines operan a través de niveles de VCC CMOS. Cinco de los pines mas usados en las aplicaciones de los radios XSTREAM son:

• DI (PIN 4 – DATA IN)

• DO (PIN 3 – DATA OUT)

• VCC (PIN 10 – POWER)

• GND (PIN 11 – GROUND)

• (PIN 1 – CLEAR-TO-SEND) APLICACIÓN : FIGURA 2.2. APLICACIÓN-CONEXIÓN A UN PROCESADOR.

2.1.3 COMUNICACIÓN SERIAL El radio XSTREAM se comunica a cualquier equipo a través de su puerto serial. El radio XSTREAM puede comunicarse con cualquier interfase UART o a través de un cable RS232/485/422 como se muestra en la figura 2.3 y 2.4 : FIGURA 2.3.EQUIPOS QUE CONTENGAN UNA INTERFASE UART PUEDEN CONECTARSE DIRECTAMENTE CON EL RADIO A TRAVÉS DE SUS PINES.

FIGURA 2.4. A TRAVES DE SU PUERTO SERIAL LOS EQUIPOS PUEDEN CONECTARSE DIRECTAMENTE A LOS RADIOS.

Universidad Autónoma Metropolitana Ingeniería Electrónica

23

Los datos entran a el radio a través del el pin di como una señal asíncrona. cada paquete de datos consiste en un start bit(low), 8 bits de datos y un stop bit(high) como es mostrado en la siguiente figura : FIGURA 2.5. EL RADIO TRANSMITE 8 BITS DE DATOS SOBRE EL AIRE, EL START BIT Y EL STOP BIT NO SON TRANSMITIDOS.

Una vez que los datos han entrado a el radio a través del pin DI son almacenados en el DI buffer hasta que puedan ser transmitidos. Una vez que el primer byte de datos entra al DI buffer, el radio inicializa el canal de radio frecuencia(a menos que esté recibiendo datos ). En el DI buffer los datos son encapsulados de la siguiente forma : FIGURA 2.6. PAQUETE RF

2.1.4 MODOS DE OPERACIÓN El radio XSTREAM opera en cinco modos y solo puede operar en un modo a la vez. FIGURA 2.7. MODOS DE OPERACIÓN

Universidad Autónoma Metropolitana Ingeniería Electrónica

24

MODO DE OPERACIÓN IDLE El radio xstream opera en el modo IDLE cuando no hay datos transmitiendo ni datos recibiendo. El radio pasa de este modo a otro bajo cualquier de las siguientes condiciones :

1. Se están recibiendo datos en di buffer (radio pasa a el modo transmit).

2. Datos son recibidos por la antena (radio pasa a el modo receive).

3. El modo command esta siendo utilizado (radio pasa a el modo command).

4. Condiciones del modo sleep son validadas (radio pasa a el modo sleep).

MODO DE OPERACIÓN TRANSMISIÓN. Cuando el primer byte de datos atraviesa por el pin DI y llega al di buffer, el radio pasa del modo IDLE a el modo transmisión. Una vez en el modo transmisión, el radio inicializa el canal de transmisión. Durante la inicialización de el canal de transmisión los datos son acumulados en el di buffer. Una vez que el canal es inicializado, los datos son agrupados en paquetes de 64 bytes y son transmitidos. el radio continua transmitiendo hasta que el DI buffer se vacía. una vez terminada la transmisión el radio regresa a el modo IDLE, este proceso se muestra en la sig. figura : FIGURA 2.8. TRANSMISIÓN DE DATOS

Universidad Autónoma Metropolitana Ingeniería Electrónica

25

MODO DE OPERACIÓN RECEPCIÓN. Si el radio detecta que se están transmitiendo datos sobre el aire y esta operando en el modo IDLE, este pasa del modo IDLE a el modo RECEPCIÓN para poder recibir datos. Cuando se reciben todos los datos, el radio los examina a través de un código de redundancia cíclica (CRC) para asegurarse que los datos son recibidos sin error. si el CRC es invalido los datos son descartados. si el CRC es valido los datos son almacenados en el do buffer, este proceso es mostrado en la siguiente figura: FIGURA 2. 9. RECEPCIÓN DE DATOS

MODO DE OPERACIÓN SLEEP. El modo SLEEP es habilitado en el radio para estar en un estado de bajo consumo de energía para cuando no se esta en uso. Para entrar en el modo SLEEP el siguiente caso debe de ocurrir :

- El radio debe de estar en el modo IDLE (no recibiendo ni transmitiendo datos ) por un tiempo definido por el usuario (vea comando ST).

Una vez estando en el modo SLEEP, el radio no transmitirá o recibirá datos hasta que este primero regrese a el modo IDLE. El modo SLEEP es habilitado o deshabilitado a través de los comandos SM. MODO DE OPERACIÓN COMANDOS AT. El modo COMANDOS AT provee un estado en el cual se pueden ajustar los parámetros del radio xstream dependiendo de las características de la aplicación que se desee.

Universidad Autónoma Metropolitana Ingeniería Electrónica

26

COMANDOS AT. Los comandos AT son una serie de recursos que permiten a los usuarios poder configurar el radio basándose en sus necesidades especificas . Para poder utilizar los comandos, el radio debe de estar en el modo COMANDOS AT. Los comandos AT pueden entonces ser enviados a el radio usando comandos ASCII, estos pueden ser enviados usando el software x-CTU o por medio de una hyperterminal. En la siguiente tabla se enlistan los comandos AT que se pueden utilizar : TABLA 2.2. COMANDOS AT .

Universidad Autónoma Metropolitana Ingeniería Electrónica

27

Anexo 3 PIC18F6720 3.1 CARACTERÍSTICAS 3.1.1 ALTO DESEMPEÑO RISC CPU: • 128 kbytes de direccionamiento a memoria de programa lineal. • 3840 kbytes de direccionamiento a memoria de datos lineal. • EEprom de 1 kbytes. • Opera arriba de 10 mips: - Entrada osc./clock dc - 40 mhz. - Entrada osc/clock con PLL activo de 4 MHZ - 10 MHZ. • Instrucciones de16 bits, línea de datos de 8 bits. • Interrupciones con niveles de prioridad. 3.1.2 CARACTERÍSTICAS DE LOS PERIFERICOS: • Cuatro pines para interrupciones externas. • Modulo timer0: temporizador / contador de 8 bits/16 bits. • 2 módulos timer1, timer3: temporizador / contador de 16 bits. • 2 módulos timer2, timer4: temporizador / contador de 8 bits. • Reloj oscilador secundario - timer1/ timer3. • Puerto serial maestro asíncrono (mssp). • Dos módulos USART direccionables: - Soporta rs-485 y rs-232. • Puerto esclavo paralelo (psp). 3.1.3 CARACTERISTICAS ANALÓGICAS • Convertidor (a/d), 12 canales analógico-digital, conversión a 10 bits. • Comparador analógico dual: 3.1.4 TECNOLOGIA CMOS: • Baja potencia, tecnología flash de alta velocidad. • Diseño totalmente estático. • Voltaje de operación de 2.0v a 5.5v. • Rangos de temperatura industrial y extendida. FIG 3.1. DIAGRAMA DE LOS PINES DEL PIC18F6720

Universidad Autónoma Metropolitana Ingeniería Electrónica

28

DIAGRAMA A BLOQUES DEL PIC 18F6720

3.2 MODULOS PROGRAMABLES DEL PIC El PIC esta compuesto de varios módulos. Aquí sólo se mencionaran los de interés como lo son: -Recepción-transmisión sincronía asíncrona universal direccionable (USART). -Modulo convertidor a/d de 10 bits. -Puertos de entrada salida. PUERTO F. PUERTO G.

Universidad Autónoma Metropolitana Ingeniería Electrónica

29

Dichos módulos cuentan a su vez con registros los cuales son configurables de acuerdo a la aplicación que se les desee dar. 3.2.1 RECEPCION-TRANSMISION SINCRONA ASINCRONA UNIVERSAL DIRECCIONABLE (USART). DESCRIPCION Es uno de los dos módulos de entrada / salida serial con que cuenta el PIC18F6720. cada dispositivo cuenta con dos USARTs que son configurables de forma independiente. Cada uno puede ser configurado como un sistema asíncrono full-duplex que se comunica con otros sistemas, en este caso con el modulo XSTREAM OEM 900 MHz, el cual cuenta con una interfaz serial asíncrona, o como un sistema síncrono half-duplex. El USART puede ser configurado de la siguiente forma: -asíncrona ( full-duplex ) -sincronía-maestra ( half-duplex ) -sincronía-esclava ( half-duplex ) Nos enfocaremos a la forma sincronía que es la que nos interesa. Este dispositivo cuenta con USART1 y USART2, el que utilizaremos será el USART2. los pines del USART2 están multiplexados con las funciones del puerto G (RG1/TX2/CK2 y RG2/RX2/DT2). Abajo se muestra como deben estar configurados estos pines para funcionar como USART: - bit SPEN (RCSTA2<7>) debe ser puesto como 1

- bit TRISG<2> debe ser puesto como 1 - bit TRISG<1> debe ser puesto como 0 para ser asíncrono

El registro 3.1 nos muestra el esquema del estado de transmisión y registro de control ( TXSTAX ), y el registro 3.2 nos muestra el esquema del estado de recepción y registro de control ( RCSTAX ), tanto el USART1 y USART2 tienen su propio TXSTAX y RCSTAX. Para el USART2 tenemos los registros TXSTA2 Y RCSTA2. REGISTRO 3.1

BIT 7 CSRC: bit que selecciona la fuente del reloj modo asíncrono: no importa modo sincrono: 1 = modo maestro (reloj generado internamente de BRG) 0 = modo esclavo (reloj de fuente externa) bit 6 TX9: bit que habilita transmisión de 9 bits 1 = seleccionar 9 bits de transmisión 0 = seleccionar 8 bits de transmisión

Universidad Autónoma Metropolitana Ingeniería Electrónica

30

bit 5 TXEN: bit para habilitar transmisión 1 = habilitar transmisión 0 = deshabilitar transmisión nota: SREN/CREN anula TXEN en modo SYNC. bit 4 SYNC: bit que selecciona modo usart 1 = modo sincrono 0 = modo asíncrono bit 3 no implementado bit 2 BRGH: bit que selecciona alto baud rate modo asíncrono: 1 = alta velocidad 0 = baja velocidad modo sincrono: no se usa en este modo bit 1 TRMT: bit que checa el estado del registro 1 = TSR vació 0 = TSR lleno bit 0 TX9D: noveno bit de la transmisión de datos puede ser un bit de dirección dato o de paridad REGISTRO 3.2

bit 7 SPEN: bit que habilita puerto serial 1 = habilita puerto serial (pines RX/DT y TX/CK configurados. como seriales ) 0 = puerto serial deshabilitado bit 6 RX9: bit que habilita recepción de 9 bits 1 = seleccionar 9 bits de recepción 0 = seleccionar 8 bits de recepción bit 5 SREN: bit que hablita una sola recepción modo asíncrono: no importa modo sincrono-maestro: 1 = habilita una sola recepción 0 = deshabilita una sola recepción este bit es limpiado después de que la recepción se completo. modo sincrono-esclavo: no importa bit 4 CREN: bit que habilita recepción continua modo asíncrono: 1 = habilita recepción 0 = deshabilita recepción modo sincrono: 1 = habilita recepción continua hasta que CREN es

Universidad Autónoma Metropolitana Ingeniería Electrónica

31

limpiado(CREN anula sren). 0 = deshabilitar recepción continua bit 3 ADDEN: bit que habilita detección de dirección bit 9 modo asíncrono (rx9 = 1): 1 = habilita detección de dirección, habilita interrupciones y carga del buffer cuando RSR<8> es uno. 0 = deshabilita detección de dirección, todos los bytes son recibidos, y el noveno bit puede ser usado como bit de paridad. bit 2 FERR: bit de error de trama 1 = error de 0 = no hay error de trama bit 1 OERR: bit de error de desborde 1 = error de desborde (puede ser limpiado limpiando el bit CREN) 0 = no hay error de desborde bit 0 RX9D: noveno bit de los datos recibidos puede ser un bit de dirección/dato o de paridad GENERADOR DE BAUD RATE DEL PUERTO USART (BRG) El BRG soporta tanto modo asíncrono como síncrono del puerto usarts. Este es un generador de baud rate especializado de 8 bits. El registro SPBRG controla este periodo de transmisión de 8 bits. En el modo asíncrono el bit BRGH (ver registro 3.1) solo controla el baud rate, en modo sincrono este bit es ignorado La tabla 3.1 muestra la forma de calcular el baud rate para cada modo USART, el cual solo opera en modo maestro (reloj interno). Con el baud rate deseado y la fosc del procesador se pueden obtener los valores enteros para el registro SPBRGx con la formula que se encuentra en la tabla 3.1, con este valor se puede calcular el error en el baud rate. El ejemplo 1 muestra el cálculo del baud rate para el siguiente caso: fosc = 16 MHz baud rate deseado = 9600 BRGH = 0 SYNC = 0 Es conveniente usar baud rate alto (bit BRGH = 1), incluso para los relojes de baud bajo. Esto es por que la ecuación del ejemplo 1 puede reducir el error de baud rate en algunos casos. Ejemplo 1: calculando el error de baud rate baud rate deseado = FOSC / (64 (x + 1)) resolviendo para x: x = ((FOSC / baud rate deseado) / 64 ) – 1 x = ((16000000 / 9600) / 64) – 1 x = [25.042] = 25 baud rate calculado = 16000000 / (64 (25 + 1)) = 9615 error = (baud rate calculado- baud rate deseado) baud rate deseado

Universidad Autónoma Metropolitana Ingeniería Electrónica

32

= (9615 – 9600) / 9600 = 0.16% TABLA 3.1 formulas para calcular baud rate SYNC BRGH = 0 (baja velocidad) BRGH = 1 (alta velocidad) 0 (asincrono) baud rate =

fosc/(64(x+1)) baud rate = fosc/(16(x + 1))

1 (sincrono) baud rate = fosc/(4(x+1))

n/a

x = valor en el registro SPBRGx entre 0 y 255. MUESTREO El dato en el pin RXx (RC7/RX1/DT1 O RG2/RX2/DT2) es probado tres veces por un circuito detector para determinar si es un nivel alto o bajo el que esta presente en el pin. TABLA 3.2 registros asociados con el generador de baud rate

Nota: los registros tiene el mismo nombre tanto para USART1 y USART2, lo que los diferencia es el valor de ‘x’ que es 1 o 2 respectivamente. USART MODO ASINCRONO En este modo el usart usa el formato de codificación NRZ (un bit de inicio, ocho o nueve bits de datos y un bit de parada). El formato más común es el de 8 bits. el usart transmite y recibe el primer LSbit. Los USARTs receptor y transmisor funcionan independientemente, pero usan el mismo baud rate y el mismo formato de datos. La paridad no es soportada por hardware pero puede ser implementada en software (guardado como el noveno bit de datos). el modo asíncrono es seleccionado poniendo en uno el bit SYNC del registro TXSTA2. El USART modo asíncrono consta de los siguientes elementos importantes: BRG circuito de muestreo transmisor asíncrono receptor asíncrono. TRANSMISOR USART ASINCRONO El diagrama a bloques del transmisor usart es mostrado en la figura 3.2 el corazón del transmisor es el Transmit (Serial) Shift

Universidad Autónoma Metropolitana Ingeniería Electrónica

33

Register (TSR). El shift register obtiene los datos del búfer transmisor de escritura/lectura TXREGx. El TXREGx es cargado con datos en software. El TSR no esta cargado hasta que el bit de paro a sido transmitido. Tan pronto como el bit de paro es transmitido, el TSR es cargado con un nuevo dato del registro TXREGx (si es que lo hay). Solo el TXREGx transfiere los datos al registro TSR (en un tiempo TCY), el TXREGx es vaciado y el bit de bandera, TXX1IF (PIR1<4> para USART1, PIR3<4> para USART2) es uno. Las interrupciones para este modulo pueden habilitarse o deshabilitarse dando un 1 ó un 0 al bit correspondiente en TXxIE (PIE1<4> para USART1, PIE<4> para USART2). El bit de bandera TXxIF será un uno, independiente del estado de habilitación del bit TXxIE y no puede ser limpiado en software. Este se borrara solo cuando un nuevo dato es cargado en el registro TXREGx. Mientras el bit de bandera TXIF indica el estado del registro TXREGx, otro bit, TRMT (TXSTAx<1>), muestra el estado del registro TSR. El bit de estado TRMT es un bit solo de lectura, el cual se pone a uno cuando el registro TSR esta vació. No hay interrupciones para este bit, el usuario tiene que verificar cuando el TSR esta vació. Pasos para habilitar una transmisión asíncrona (usart2): 1.-Inicializar el registro SPBRG2 con el baud rate apropiado. Si se desea un alto baud rate poder a uno el BRGH 2.- Habilitar el puerto serial asíncrono poniendo en cero el bit SYNC y en uno el bit SPEN. 3.- Si se desean interrupciones, poner en uno el bit TX2IE en el registro PIE. 4.- Si se desean 9 bits de transmisión, poner en uno el bit TX9. Puede ser usado como bit de datos/direcciones 5.- Habilitar la transmisión poniendo en uno el bit TXEN, el cual pondrá en uno el bit TX2IF. 6.- Si se seleccionan 9 bits de transmisión, el noveno bit es cargado en el bit tx9d. 7.- Cargar el dato en el registro TXREG2 (empezar transmisión) FIGURA 3.2 diagrama a bloques del transmisor usart

Universidad Autónoma Metropolitana Ingeniería Electrónica

34

TABLA 3.3 REGISTROS ASOCIADOS CON EL TRANSMISOR ASINCRONO

RECEPTOR USART ASINCRONO El diagrama a bloques del receptor usart es mostrado en la figura 3.3, el dato es recibido en el pin (RC7/RX1/DT1 o RG2/RX2/DT2) y conducido al bloque de recuperación de datos. El bloque de recuperación de datos es actualizado a alta velocidad de movimiento que opera a 16 veces el baud rate. Pasos para habilitar una recepción asíncrona: 1.- Inicializar el registro SPBRG2 con el baud rate apropiado. Si se desea un alto baud rate poder a uno el BRGH 2.- Habilitar el puerto serial asíncrono poniendo en cero el bit SYNC y en uno el bit SPEN. 3.- Si se desean interrupciones, poner en uno el bit RC2IE. 4.- Si se desean 9 bits de recepción, poner en uno el bit CX9 5.- Habilitar la recepción poniendo en uno el bit SCREN. 6.- El bit de bandera RC2IF será puesto en uno cuando la recepción es completa y una interrupción puede ser generada si se pone en uno el bit RC2IE. 7.- Leer el registro RCSTA2 para obtener el noveno bit ( si esta habilitado). Y determinar si algún error ocurre durante la recepción. 8.- Leer los 8 bits de datos recibidos, leyendo el registro RCREG2 9.- Si hay algun error, limpiar el error limpiando el bit SCREN 10.- Si se usa interrupciones, es necesario que los bits GIE y el PIEI del registro INTCON sean uno.

Universidad Autónoma Metropolitana Ingeniería Electrónica

35

FIGURA 3.3 Diagrama a bloque del receptor

TABLA 3.4 registros asociados con el receptor asíncrono

3.2.2 MODULO CONVERTIDOR A/D DE 10 BITS El modulo convertidor analógico digital tiene 12 entradas, este modulo convierte una entrada de señal analógica a su correspondiente numero digital de 10 bits. El modulo tiene cinco registros • registro que guarda los bits mas altos de la conversión (ADRESH) • registro que guarda los bits mas bajos de la conversión (ADRESL) • registro de control A/D 0 (ADCON0) • registro de control A/D 1 ((ADCON1) • registro de control A/D 2 ((ADCON2

Universidad Autónoma Metropolitana Ingeniería Electrónica

36

el registro adcon0 (registro 3.3) controla la operación del modulo A/D, el registro ADCON1 (registro 3.4) configura las funciones de los pines de los puertos, el registro ADCON2, (registro 3.5) configura el reloj A/D y la justificación. REGISTRO 3. 3 Registró ADCON0

bit 7-6 no implementado: leer como '0' 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) 0110 = canal 6 (an6) 0111 = canal 7 (an7) 1000 = canal 8 (an8) 1001 = canal 9 (an9) 1010 = canal 10 (an10) 1011 = canal 11 (an11) bit 1 GO/DONE: bit de estado de conversión a/d cuando ADON = 1: 1 = conversión a/d en progreso (cuando este bit = 1 empieza conversión a/d, el cual es automáticamente limpiado por hardware cuando la conversión a/d es completa) 0 = la conversión a/d no esta en progreso bit 0 ADON: bit de encendido a/d 1 = modulo convertidor a/d habilitado 0 = modulo convertidor A/D deshabilitado REGISTRO 3.4 Registro ADCON1

bit 7-6 no implementado: leer como '0' bit 5-4 VCFG1:VCFG0: bits de configuración de voltajes de referencia

Universidad Autónoma Metropolitana Ingeniería Electrónica

37

bit 3-0 PCFG3:PCFG0: bits de control de configuración de puertos A/D:

A = entrada analógica D = entrada digital Nota: la celdas sombreadas son canales solo disponibles en el PIC18F8X20. REGISTRO 3.5 Registro ADCON2

bit 7 ADFM: bit de selección de formato de resultado a/d 1 = justificación derecha 0 = justificación izquierda bit 6-3 no implementado: leer como '0' bit 2-0 ADCS1:ADCS0: bits de selección del reloj 000 = FOSC/2 001 = FOSC/8 010 = FOSC/32 011 = FRC (reloj derivado de un oscilador RC = 1 mhz max) 100 = FOSC/4 101 = FOSC/16 110 = FOSC/64 111 = FRC (reloj derivado de un oscilador RC = 1 MHZ max) El voltaje de referencia analógico es seleccionado por software de las fuentes de voltaje positiva y negativa (VDD y VSS) o el nivel de voltaje en el pin RA3/AN3/VREF+ y el pin RA2/AN2/VREF-.

Universidad Autónoma Metropolitana Ingeniería Electrónica

38

Cada pin de un puerto asociado con el convertidor A/D, puede ser configurado como una entrada analogica (RA3 puede ser voltaje de referencia) o como una entrada/salida digital. El ADRESH y ADRESL contienen el resultado de la conversión. Cuando la conversión es completa el resultado es guardado en los registros ADRESH/ADRESL, el GO/DONE es puesto en cero y la bandera de interrupción AD ADIF es puesta en uno. El diagrama a bloques del modulo A/D se muestra en la figura 1.4. FIGURA 3.4 DIAGRAMA A BLOQUES DEL A/D

Después de que el modulo A/D a sido configurado como se desea, la selección de canales se hará antes de que la conversión inicie. Los canales de entrada analógica tendrán su correspondiente bit del TRIS como entrada. Paso para realizar una conversión: 1.- Configurar el modulo A/D • Configurar pines analógicos, voltaje de referencia (ADCON1)

Universidad Autónoma Metropolitana Ingeniería Electrónica

39

• Seleccionar canales de entrada A/D (ADCON0) • Seleccionar reloj de conversión A/D (ADCON2) • Encender modulo A/D (ADCON0) 2. Configurar interrupciones A/D (si se desea): • Limpiar bit ADIF • Poner en uno bit ADIE • Poner en uno bit GIE 3. Esperar el tiempo de adquisición requerido. 4. Iniciar conversión: • Poner en uno el bit GO/DONE (registro ADCON0) 5. Esperar a que la conversión A/D sea completa, por: • Polling, checando cuando el bit GO/DONE es limpiado ó • Esperando a que se active la interrupción A/D 6. Leer el resultado A/Den el registro (ADRESH:ADRESL); limpiar bit ADIF, si se requiere. 7. Para la siguiente conversión, ir al paso 1 o paso 2, como se requiera. El tiempo de conversión A/D por bit es definido como TAD. Una máxima espera de 2 TAD es requerida antes de la siguiente adquisición. FIGURA 3.5 MODELO DE ENTRADA ANALOGICA

SELECIONANDO EL RELOJ DE CONVERSION El tiempo por bit de la conversión A/D es definida como TAD. La conversión A/D requiere 12 TAD por 10 bits de conversión. La fuente del reloj de conversión A/D es seleccionado por software. Hay siete posibles opciones para TAD: • 2 TOSC • 4 TOSC • 8 TOSC • 16 TOSC • 32 TOSC • 64 TOSC • Internal RC oscillator

Universidad Autónoma Metropolitana Ingeniería Electrónica

40

Para la correcta conversión A/D, el reloj de conversión A/D (TAD) se debe seleccionar un TAD mínimo de 1.6 µs. La tabla 3.5 muestra el resultado de TAD derivados de las frecuencias de operación de los dispositivos y la selección de la fuente del reloj A/D. TABLA 3.5 TAD VS FRECUENCIAS DE OPERACIÓN DE LOS DISPOSITIVOS

CONFIGURACION DE LOS PINES COMO ENTRADS ANALOGICAS Los registros ADCON1, TRISA, TRISF y TRISH controlan la operación de los pines del puerto A/D. Los pines del puerto necesitan ser entradas analógicas, por lo que el TRIS es todo puesto a uno. La operación A/D es independiente del estado de los bits CHS3:CHS0 y los bits TRIS. TABLA 3.6 REGISTRO ASOCIADOS CON EL MODULO A/D

Universidad Autónoma Metropolitana Ingeniería Electrónica

41

3.2.3 PUERTOS DE ENTRADA/SALIDA. Dependiendo del dispositivo seleccionado, hay siete puertos disponibles en PIC18FXX20. Algunos de sus pines son multiplexados con uno o mas funciones alternas de otras características periféricas. Cada puerto tiene tres registros para configurar su modo de operación. estos registros son: • registro TRIS (data dirección register) • registro PORT (leer el nivel en los pines del dispositivo) • registro LAT (latch de salida) El data latch (registro LAT) es usado para leer-modificar-escribir operaciones en el valor que los pines I/O estén manejando. PUERTO F Registros PORTF, LATF, y TRISF el PORTF es de 8 bits, es un puerto bidireccional. Su correspondiente registro de dirección de datos es el TRISF. Si todos los bits del TRISF son uno el puerto se configura como salida y si todos son ceros se configura como entrada. Las operaciones de lectura-modificación-escritura se hacen con el registro LATF, leer y escribir el valor del latched de salida por el PORTF. El PORTF esta multiplexado con varias funciones de otros periféricos analógicos, incluyendo las entradas del convertidor A/D y entradas del comparador, salidas y voltaje de referencia. EJEMPLO. COMO INICIALIZAR EL PUERTO F

CLRF PORTF ; Inicializar PORTF ; limpiando la salida ; data latches CLRF LATF ; Método alterno ; para limpiar la salida ; data latches MOVLW 0x07 ; MOVWF CMCON ; apagar comparadores MOVLW 0x0F ; MOVWF ADCON1 ; Hacer PORTF como I/O digital MOVLW 0xCF ; Valor usado para ; inicializar la dirección ; de datos MOVWF TRISF ; Poner RF3:RF0 como entradas ; RF5:RF4 como salidas ; RF7:RF6 como entradas

Universidad Autónoma Metropolitana Ingeniería Electrónica

42

FIGURA 1.6 DIAGRMA A BLOQUES DEL PORTF RF1/AN6/C2OUT, RF2/AN5/C1OUT

FIGURA 1.7 DIAGRAMA A BLOQUES FIGURA 1.8 DIAGRAMA A BLOQUES PINES RF6:RF3 AND RF0 PIN RF7

TABLA 3.7 FUNCIONES DEL PORTF

Universidad Autónoma Metropolitana Ingeniería Electrónica

43

TABLA 3.8 REGISTROS RELACIONADOS CON EL PORTF

LEER: x = Desconocido, u = no cambiable. Celdas sombreadas no son usadas por PORTF. PUERTO G Registros PORTG, TRISG y LATG El PORTG es de 5 bits, puerto bidireccional. El TRISG es el correspondiente registro de dirección de datos. Si todos los bits del TRISG son uno el puerto se configura como salida y si todos son ceros se configura como entrada. las operaciones de lectura-modificación-escritura se hacen con el registro LATG, leer y escribir el valor del latched de salida por el PORTG. El PORTG esta multiplexado con las funciones CCP y USART (Tabla 3.9). Los pines del PORTG tienen buffer de entrada Schmitt Trigger. Cuando habilitas las funciones periféricas, debe tenerse atención en definir los bits del TRIS para cada bit del PORTG. Algunos periféricos anulan que los bits TRIS hagan los pines salida y otros periféricos anulan que el TRIS los haga entradas. El usuario debe ver la sección de periféricos para la correcta utilización del TRIS. EJEMPLO: INICIALIZACION PORTG

CLRF PORTG ; Iniciar PORTG ; limpiando data ; latches de salida CLRF LATG ; Metodo alterno ; para limpiar data laches ; de salida MOVLW 0x04 ; Valor usado para ; inicializar direccion ; de datos MOVWF TRISG ; RG1:RG0 como salida ; RG2 como entrada ; RG4:RG3 como entradas

Universidad Autónoma Metropolitana Ingeniería Electrónica

44

FIGURA 3.9 DIAGRAMA A BLOQUES DEL PORTG (SALIDAS PERIFERICAS)

TABLA 3.9 FUNCIONES DEL PORTG

TABLA 3.10 REGISTROS ASOCIADOS CON EL PORTG

Universidad Autónoma Metropolitana Ingeniería Electrónica

45

Anexo 4 Este programa realiza la conversión de una señal analógica que entra por un canal analógico (canal 6) a su correspondiente número digital de diez bits y los transmite por el puerto serial USART2. ;************************************************************ ; TITLE "canal 6, convertidor A/D" ;************************************************************ ; UN CANAL SELECIONADO AN6. ; EL PROGRAMA CONVIERTE LOS VALORES QUE ENTRAN POR RF1 Y LOS ; TRANSMITE POR EL PUERTO SERIAL 2 ; ; CONFIGURACION DE A/D: ; Vref = +5V INTERNOS ; OSC A/D . = Fosc/32 ; CANAL A/D = AN6 (RF1) LIST P=18F6720 #include <P18F6720.INC> ; archivo que contiene las direcciones ; para los nombres de registros y bits TEMP equ 0X10 UNIDAD equ 0x65 VALOR equ 0X67 CONTADOR1 equ 0xF7 CONTADOR2 equ 0xF9 CONTADOR3 equ 0xFB CONTADOR equ 0xFD COUNTER equ 0xFF ;************************************************************ ; vector de reset ;************************************************************* org 0x00000 ; dirección del vector de reset goto Iniciar ;************************************************************ org 0x00020 Iniciar bsf RCSTA2,SPEN ;puerto serial habilitado clrf PORTG ; Inicializando PORTG clrf LATG bcf TRISG,1 ; Hacer RG1 como salida bsf TRISG,2 ; Hacer RG2 como entrada clrf PORTF ; Inicializando PORTF clrf LATF movlw 0X07 ;apagando comparadores movwf CMCON movlw B'00000000' ;puerto F como entradas analógicas movwf ADCON1 movlw 0X7F movwf TRISF ; puerto F como entrada

Universidad Autónoma Metropolitana Ingeniería Electrónica

46

call InicializarAD ; configurar modulo A/D y USART2 call retraso ; retraso durante 259 ciclos de instrucción ;********************************************************************* ; para iniciar la conversión se tiene que recibir el carácter e ;********************************************************************* movlw 0x40 movwf CONTADOR ; Cuenta hasta 128 bytes de transmisión, cuando son ; los 128 bytes espera un tiempo sin transmitir y ; después reanuda transmisión movlw 'e' movwf UNIDAD ; Valor guardado = ‘e’, para ser comparado con el valor ; valido que se va a recibir =’e’ checa ;********************************************************************** ; ciclo de espera ;********************************************************************** movlw 0x64 ; Ciclo de espera de 5 mseg. movwf COUNTER espera call retraso decfsz COUNTER goto espera ;********************************************************************** movf RCREG2,W ; Pasa a WREG el dato recibido cpfseq UNIDAD ; Si WREG = e , comienza conversión goto checa bsf ADCON0,GO ; iniciar primera conversión A/D COMIENZA PRINCIPAL btfsc ADCON0,GO ; checar cuando termine la conversión goto PRINCIPAL ; Si GO =0 , termina conversión ;***** LEER ADRESH Y ADRESL Y ENVIAR POR PUERTO SERIAL ******** call TRANSMITIR_CONVERSIÓN ; ;************************************************************** ; retraso ;*************************************************************** clrf COUNTER Delay call retraso ; retraso decfsz COUNTER,F goto Delay ;***************************************************************** ; Contador que lleva la cuenta de los bytes ; transmitidos, cuando sean 128 bytes dar un tiempo de espera ;****************************************************************** decfsz CONTADOR,F goto seguir call delay_slot seguir ;******************************************************************* ; checar si se quiere seguir transmitiendo ; si llega el carácter 'd' detener transmisión ; si no es así continuar

Universidad Autónoma Metropolitana Ingeniería Electrónica

47

;******************************************************************* movlw 'd' movwf UNIDAD ;*********************************************************** ;Retraso de 11.8 mseg. ;*********************************************************** Delay2 call retraso call retraso decfsz COUNTER,F goto Delay2 ;*********************************************************** movf RCREG2,W cpfseq UNIDAD ;si WREG = d , detener conversión goto continúa ;continua con la transmisión goto checar ;brinca a un ciclo, donde espera a que llegue un valor ;valido en este caso el valor es el carácter ‘n’ continua ;*********************************************************** bsf ADCON0,GO ; inicia nueva conversión A/D goto COMIENZA ;comienza de nuevo el proceso de conversión ;******************************************************************* ; checar si se desea reiniciar la transmisión ; si llega carácter ‘n’ reiniciar ;******************************************************************** checar movlw 'n' movwf UNIDAD movf RCREG2,W cpfseq UNIDAD ;si WREG = ‘n’ , comenzar conversión goto checar bsf ADCON0,GO ; inicia conversión A/D goto COMIENZA ;************************************************************ ; InicializarAD ; selecciona AN6 como entrad analógica, fosc/32. ;************************************************************ InicializarAD ;**************** para A/D ***************************** movlw B'00000000' ; hacer RF1 como entrada analógica, ;VDD,VSS como voltajes de ref. movwf ADCON1 movlw B'00011000' ; Seleccionar CANAL 6, AN6 movwf ADCON0 movlw B'00000010' ;selecciona Fosc/32, justificación izq. movwf ADCON2 bsf ADCON0,ADON ;Habilita A/D ;*********** iniciar USART2 **************************************** movlw 47h ; 9600 baud @ 11.0592MHz movwf SPBRG2

Universidad Autónoma Metropolitana Ingeniería Electrónica

48

bsf TXSTA2,BRGH ;Seleccionar alto baud rate bcf TXSTA2,SYNC ;modo asíncrono bsf RCSTA2,SPEN ;puerto serial habilitado bsf TXSTA2,TXEN ;Habilitar transmisión bsf RCSTA2,CREN ;Habilitar recepción return ;************************************************************ ; leer registros ADRESH y ADRESL y transmitirlos por el ; puerto serial 2 ;************************************************************* TRANSMIT IR_CONVERSION movf ADRESH,W movwf TXREG2 ; transmite el byte btfss TXSTA2,TRMT ; espera a que se vacié al buffer de ;transmisión del puerto 2 goto $-1 ;brinca una instrucción atras movf ADRESL,W movwf VALOR movlw 0X06 mpvwf COUNTER RECORRE rrcf VALOR ;corrimiento de 6 bits a la izq. decfsz COUNTER goto RECORRE movf VALOR,W movwf TXREG2 ;se transmite después de haberle aplicado un corrimiento btfss TXSTA2,TRMT ; espera a que se vacié al buffer de ;transmisión del puerto 2 goto $-1 ; brinca una instrucción atras return ;************************************************************************ ; despues de transmitir 128 bytes se transmite el carácter ‘z’ y se da un tiempo ; de aproximadamente 3 seg. Antes de volver a transmitir ;************************************************************************ delay_slot movlw 'z' movwf TXREG2 ; transmite el byte btfss TXSTA2,TRMT ; espera a que se vacié al buffer de ;transmisión del puerto 2 goto $-1 movlw 0x7F movwf CONTADOR3 ciclo3 clrf CONTADOR2 ciclo2 clrf CONTADOR1 ciclo1 decfsz CONTADOR1 goto ciclo1 decfsz CONTADOR2 goto ciclo2 decfsz CONTADOR3

Universidad Autónoma Metropolitana Ingeniería Electrónica

49

goto ciclo3 return ;************************************************************ ; retraso durante 255 ciclos de instrucción, 94.3 us. ;************************************************************ retraso movlw D'255' ;cargo TEMP con un valor decimal = 255 movwf TEMP SD decfsz TEMP,F ; ciclo de espera goto SD return ;************************************************************** END BIBLIOGRAFÍA: www.maxstream.net. [email protected]. XSTREAM ADVANCED PROGRAMMING & CONFIGURATION. PRODUCT MANUAL. QUICK START GUIDE. USING THE XSTREAM-DEV DEVELOPMENT KIT WITH MAXSTREAM X-CTU SOFTWARE. PRODUCT MANUAL. XSTREAM OEM RF MODULE. PRODUCT MANUAL. WWW.MICROCHIP.COM. PIC18F6520/6620/8520/8620/6720/8720 DATA SHEET. WWW.ODISEA2010.COM.

http://www.contraloriagen.gov.co/cdminas/contenido/Agua%20Subterranea%20para%20el%20Desarrollo%20Social.pdf

http://www.agitec.gob.mx/cuadro/index_espectro.html

Evelio Martínez es profesor de tiempo completo de la Facultad de Ciencias de la Universidad Autónoma de Baja California (UABC) y colaborador de la revista RED, http://www.eveliux.com/articulos/medios.html