94

CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía
Page 2: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

2

CONTENIDO

INTRODUCCIÓN ...................................................................................................................................................3 CAPÍTULO 1

DISEÑO E IMPLEMENTACIÓN DE UN MAPEO NO LINEAL.......................................................................................5 1.1 Tent Map ............................................................................................................................................................................... 5 1.2 Implementación electrónica del mapeo casa de campaña ...................................................................................... 7 1.3 Aplicación del circuito electrónico mapeo casa de campaña ............................................................................... 13 CAPÍTULO 2

CONVERSOR A/D DEL DSPIC30F4013 Y CONVERSOR D/A DACO8OO .................................................................... 16 2.1 El microcontrolador DSPIC30F4013 .......................................................................................................................... 16 2.2 Conversor A/D de 12-bits ............................................................................................................................................... 16 2.3 El convertidor digital-analógico y analógico-digital ............................................................................................. 18 2.4 Características de un DAC .............................................................................................................................................. 18 2.5 Resolución .......................................................................................................................................................................... 19 2.6 Ecuación de entrada-salida ............................................................................................................................................ 21 2.7 Características del ADC ................................................................................................................................................... 21 2.7.1 Ecuación de entrada-salida ................................................................................................................................. 21 2.8 Convertidor digital a analógico de 8 bits: El DAC 0800 .......................................................................................... 23 2.9 Aumento de resolución de conversores ...................................................................................................................... 25 CAPÍTULO 3

EL AMPLIFICADOR OPERACIONAL ..................................................................................................................... 29 3.1 Tecnología de amplificadores operacionales ........................................................................................................... 29 3.2 Símbolo y terminales del circuito ............................................................................................................................... 30 3.3 Configuraciones utilizadas en esta tesis...................................................................................................................... 30 3.3.1 Seguidor ..................................................................................................................................................................... 30 3.3.2 Inversor ...................................................................................................................................................................... 31 3.3.3 No inversor ................................................................................................................................................................ 32 3.3.4 Sumador inversor .................................................................................................................................................... 32 CAPÍTULO 4

CARACTERIZACIÓN Y RESULTADOS DEL TENT MAP............................................................................................. 34 CONCLUSIONES .......................................................................................................................................................................... 58 APÉNDICE A

MANUAL DE PROGRAMACIÓN Y CONSTRUCCION DE PROYECTOS ....................................................................... 60 A1.1 Introducción .................................................................................................................................................................... 60 A1.2 Practica 1, Construcción de un sistema mínimo.................................................................................................... 60 A1.3 Uso del puerto ICSP ....................................................................................................................................................... 62

Page 3: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

3

A1.4 Precauciones al usar el ICSP ....................................................................................................................................... 64 A1.5 El programador MASTER-PROG USB ........................................................................................................................ 65 A1.6 Uso del MPLAB Y MPLAB C30 compiler.................................................................................................................... 65 A1.7 Práctica 2, los puertos de entrada y salida ............................................................................................................. 68 A1.8 Práctica 3, el temporizador (Timer) ......................................................................................................................... 71 A1.9 Práctica 4, el UART ........................................................................................................................................................ 74 A1.10 Práctica 5, uso del convertidor analógico digital ............................................................................................... 80 BIBLIOGRAFÍA ........................................................................................................................................................................... 92

Page 4: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

4

INTRODUCCIÓN

La Teoría del Caos es una denominación popular de la rama de las matemáticas y la física

que estudia lo complicado, lo impredecible, lo que no es lineal. De manera más técnica, es una

rama de la matemática que trata ciertos tipos de comportamientos aleatorios; es decir, caóticos

de los sistemas dinámicos.

La Teoría del Caos no es necesariamente una teoría, sino más bien un gran campo de

investigación que abarca líneas de pensamiento, y que gracias a los valiosos conocimientos

aportados por diversos científicos a la formación de su cuerpo teórico, es que amenaza en

convertirse en una ciencia por derecho propio.

Día a día se fortalece más, encontrando cabida en muchos rincones y en ambientes de

investigación científica, como la económica, biológica, matemática, etc. Aparentemente es un

eslabón perdido de la ciencia que promete dar una nueva perspectiva a la explicación de eventos

en ambientes dinámicos y turbulentos, alejándose cada vez más la visión mecanicista que ha

predominado en nuestros modelos mentales.

Lo interesante del caos es que se puede llegar a pensar en una ley universal, en la que

todo fluye con todo e interactúa de una forma que para nuestro entender es aleatorio y caótico,

pero que puede llevar un orden. La teoría del caos nos hace pensar mucho más allá de los

ejemplos concretos que nos encontramos, y de los cuales algunos se han hecho mención en este

trabajo.

Hablar del caos parece ser muy complicado sin embargo, muchos de los fenómenos

aparentemente impredecibles e incalculables están regidos por leyes sumamente simples, tales

como los conocidos fractales de Mandelbrot, las líneas de Turíng, la reacción BZ de Belousov, y las

leyes de Lorenz. Descubrieron distintas facetas de una gran idea, es decir dentro de lo

impredecible existen patrones y estructuras.

Pero que tienen en común el clima de Lorenz y los químicos de Belousov siendo sistemas

muy complicados y distintos, en primera es que se basan en sorprendentemente simples reglas

matemáticas, en segunda estas reglas tienen una propiedad única y es referida como

acoplamiento o retroalimentación.

Page 5: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

5

En este trabajo se muestra una nueva visión de algunos de los beneficios que se pueden

obtener del comportamiento caótico de un sistema en específico.

La teoría del caos se relaciona también con la familia de mapas tienda casa de campaña

que es una subclase de los mapas PWL que constan únicamente de dos intervalos.

Dentro de esta familia a su vez se pueden distinguir cuatro subfamilias: el mapa de tienda

de campaña o “tent-map" (TM), el mapa de tienda de campaña sesgado o “skew tent-map" (SK-

TM), el mapa de tienda de campaña simétrico o “symmetric tent-map" (S-TM), y el mapa de tienda

de campaña sesgado bipolar o “bipolar skew tent-map" (BSK-TM).

En este trabajo de tesis, se propone realizar un circuito electrónico con la posibilidad de

generar secuencias aleatorias basadas en la función del mapeo casa de campaña (TM), siendo esta

propuesta una de las realizaciones electrónicas más simples que se puedan dar para generar este

tipo de comportamiento.

La característica principal del circuito para generar el mapeo casa de campaña es su fácil

implementación, debido a que se usan solamente componentes analógicos, aunque para realizar

las operaciones iterativas es necesario utilizar una etapa digital. Esta tesis consta de cuatro etapas

importantes:

1. Circuito generador del mapeo casa de campaña “TENT MAP”.

2. Circuito convertidor Analógico a Digital de 12 bits a partir del IC DSPIC30F4013

de MICROCHIP.

3. Circuito convertidor Digital a Analógico de 12 bits a partir de dos convertidores digital-

analógico DAC0800 de 8 bits.

4. El amplificador operacional.

En los capítulos siguientes, se hablará del desarrollo de cada una de las etapas del

proyecto, en el orden antes mencionado.

Page 6: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

6

CAPÍTULO 1

DISEÑO E IMPLEMENTACI0N DE UN MAPEO NO LINEAL

Un número aleatorio es un número generado siguiendo una aproximación no

determinística y es equiprobable de ser generado dentro de un rango finito. En la actualidad, la

generación de números aleatorios es una tarea muy importante, a causa de que los números

aleatorios son la base para el desarrollo de campos como la criptografía [1], simulación por

computadoras, video juegos, etc.

La generación de secuencias aleatorias por lo general se realiza por medio de

computadoras, que son máquinas de Turíng gobernadas por leyes determinísticas, que generan

secuencias pseudoaleatorias de 16 a 64 bits, las cuales comienzan con una semilla 𝑥𝑥0 .

Así cuando se utiliza esta semilla para llevar a cabo la secuencia pseudoaleatoria de

compresión, estamos solamente utilizando la entropía generada por esa semilla. Y cuando se lleva

a cabo la rutina de descompresión, resulta que tiene que ser igual a la rutina generadora

pseudoaleatoria de compresión, la cual usualmente no es de más de unos cientos de bits de

información.

Debido a que la rutina de generación usualmente es del dominio público, esta no

representa una fuente de entropía por ser solamente la de la semilla. Por lo tanto, la generación

de la secuencia pseudoaleatoria no genera entropía inviolable [2].

La ecuación del circuito electrónico propuesto se puede normalizar y encontrar que se

describe por: 𝑥𝑥𝑛𝑛+1 = 𝐴𝐴(1− |2𝑥𝑥𝑛𝑛 − 1|𝛼𝛼),𝑛𝑛 = 0, 1, 2 …, donde la ecuación describe un mapeo de

ℝ a ℝ. La ecuación anterior puede representar el mapeo logístico o la casa de campaña

dependiendo si 𝛼𝛼 es igual a 2 o a 1, respectivamente (en nuestro caso será igual a 1), y A es el

parámetro de bifurcación que controla las propiedades del mapeo.

1.1 Tent Map

Los sistemas dinámicos no lineales en tiempo discreto se describen generalmente como un

mapa iterativo 𝑓𝑓 ∶ ℝ𝑘𝑘 → ℝ𝑘𝑘 dado por su ecuación de estado:

Page 7: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

7

𝑿𝑿𝑛𝑛+1 = 𝑓𝑓(𝑿𝑿𝑛𝑛), 𝑛𝑛 = 0, 1, 2, …, (1.1)

Donde 𝑿𝑿0 es el estado inicial, 𝑘𝑘 es la dimensionalidad del espacio de estados,

𝑿𝑿𝑛𝑛 ∈ ℝ𝑘𝑘 Es el estado del sistema al tiempo 𝑛𝑛 y 𝑿𝑿𝑛𝑛+1 denota el siguiente estado del sistema. La

interpretación del vector de estados depende del contexto, por ejemplo, en poblaciones biológicas

𝑿𝑿𝑛𝑛 es normalmente el tamaño de la población en la generación 𝑛𝑛, en epidemiología es la fracción

de la población infectada al tiempo 𝑛𝑛, mientras que en economía puede ser el precio por unidad al

tiempo 𝑛𝑛 para un cierto producto comercial [18].

Las repeticiones iterativas de 𝑓𝑓 proporcionan una secuencia de puntos 𝑋𝑋𝑛𝑛 ∞𝑛𝑛=0 que se

conoce como una órbita. En la década del 70, el biólogo Robert May [3] descubrió que procesos

iterativos muy sencillos estudiados en modelos biológicos, originaban comportamientos

sumamente complejos y caóticos. Trabajando con la ecuación del modelo logístico de crecimiento

poblacional, May encontró un sistema caótico que a diferencia de los anteriores, era

unidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya

sea solo o en compañía de otras aplicaciones. Este tiene la forma de una tienda como se muestra

en la Figura 1.1, y en su evolución toma un punto 𝒳𝒳𝑛𝑛 sobre el intervalo [0, 1] y se mapea en otro

punto auxiliado por la siguiente ecuación:

𝒳𝒳𝑛𝑛+1 = 𝜇𝜇𝒳𝒳𝑛𝑛 para 𝒳𝒳n < 1

2,

𝜇𝜇(1 −𝒳𝒳𝑛𝑛) para 12

≤ 𝒳𝒳𝑛𝑛 , (1.2)

Page 8: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

8

Figura 1.1. Gráfica del mapeo casa de campaña.

Donde 𝒳𝒳𝑛𝑛 ∈ [0,1], y 𝜇𝜇 es un parámetro real de bifurcación comprendido en el intervalo

[1, 2] que controla las propiedades del mapeo casa de campaña. Muchas de las propiedades

básicas de este mapeo se encuentran en el libro de Elaydi [4] sobre caos discreto. A través de la

variación del parámetro de control 𝜇𝜇 del mapeo casa de campaña se podrían examinar los

diagramas de bifurcación del sistema realizado y su posterior comprobación con el modelo

teórico, apreciándose una excelente correspondencia entre el desarrollo experimental y el modelo

matemático.

1.2 Implementación electrónica del mapeo casa de campaña

En esta sección, se presenta una de las realizaciones electrónicas más simples del mapeo

casa de campaña, por ejemplo en Tanaka et al. [5] se muestra un diagrama de un circuito típico de

un mapeo caótico en una dimensión, junto con su operación de iteración la cual se muestra en la

Figura 1.2. Por lo tanto en esta sección realizaremos una novedosa propuesta de 𝑓𝑓(𝑥𝑥) .

Page 9: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

9

Figura 1.2. Diagrama a bloques típico del mapeo casa de campaña. Que es un excelente modelo de ingeniería del

correspondiente sistema matemático.

En diferentes implementaciones del circuito casa de campaña [6, 7], se emplean los

multiplicadores analógicos como núcleo del circuito para su realización, con una normalización de

la señal por un factor de 10. Esta normalización, es necesaria a causa de las restricciones físicas en

el mismo multiplicador analógico. El punto de inicio es el diagrama a bloques del mapeo casa de

campaña que se muestra en la Figura 1.3. Típicamente este circuito contiene amplificadores

operacionales, los cuales realizan operaciones lineales como la integración y suma, así como de

elementos acoplados de circuitos integrados que desempeñan las operaciones no lineales, como la

multiplicación.

Aquí se describe un circuito nuevo que contiene componentes activos, velocidades de

radiofrecuencia capaz de reproducir las transiciones del estado estable a caos, como se observa en

la ecuación casa de campaña cuando el parámetro de bifurcación se sintoniza. El diagrama de flujo

usado para la construcción del circuito electrónico mapeo casa de campaña se muestra en la

Figura 1.3(a). El comportamiento casa de campaña se basa sobre dos líneas rectas dadas por

𝑙𝑙1 ∶ 𝜇𝜇𝑉𝑉𝑖𝑖𝑛𝑛 y 𝑙𝑙2 ∶ −2𝜇𝜇𝑉𝑉𝑖𝑖𝑛𝑛 + 1 con dominio [0, ) y [0.5, ), respectivamente.

La salida 𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 se da por 𝑙𝑙1 cuando 𝑉𝑉𝑖𝑖𝑛𝑛 permanece en el intervalo [0V, 0.5V) y por

(𝑙𝑙1 + 𝑙𝑙2) cuando 𝑉𝑉𝑖𝑖𝑛𝑛 está en el intervalo [0.5V, 1V). La respuesta de la rama inferior y superior se

muestra en la Figura 1.3 (b) y (c), respectivamente. Este enfoque permite realizar los cambios en la

pendiente de 𝜇𝜇 a −𝜇𝜇. Se puede pensar que el sistema tiene dos puntos críticos, 𝑉𝑉𝑖𝑖𝑛𝑛 < 0 y

𝑉𝑉𝑖𝑖𝑛𝑛 > 1 .

Page 10: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

10

Sin embargo, la respuesta del circuito es cero para esas entradas. En ausencia de ruido, el

circuito mapeo casa de campaña podrá permanecer en uno de esos puntos fijos, pero en el mundo

real de los componentes electrónicos analógicos siempre existe algún ruido que genera la

dinámica en el circuito.

Figura 1.3. (a) Diagrama a bloques del mapeo casa de campaña usado para la construcción del circuito electrónico. (b) Respuesta de la rama inferior del diagrama a bloques. (c) Respuesta de la rama superior del

diagrama a bloques.

Considerando lo anterior la Figura 1.4 muestra el diagrama esquemático del mapeo casa

de campaña, el cual consiste de cinco amplificadores operacionales (de U1 a U5), cuatro diodos

(D1 - D4), 13 resistencias (de R1 a R13) y una fuente de voltaje dc (Vdc). La simpleza del circuito

se debe al hecho de que las operaciones matemáticas lineales de conmutación, se realizan por los

amplificadores operacionales en el bloque de conmutación, mostrado en la Figura 1.3. Asumiendo

un desempeño ideal de todos los componentes, el circuito en la Figura 1.4 se modela por la

siguiente ecuación:

𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = 𝑅𝑅9𝑅𝑅6

𝑅𝑅8𝑅𝑅7 𝑉𝑉𝑖𝑖𝑛𝑛 −

0 para 𝑉𝑉𝑖𝑖𝑛𝑛 < 𝑅𝑅1

2𝑅𝑅2

𝑅𝑅9𝑅𝑅5

𝑅𝑅10𝑅𝑅4𝑅𝑅3𝑉𝑉𝑖𝑖𝑛𝑛

𝑅𝑅1− 𝑅𝑅3

2𝑅𝑅2 para 𝑉𝑉𝑖𝑖𝑛𝑛 ≥

𝑅𝑅1

2𝑅𝑅2

(1.3)

Donde 𝑉𝑉𝑖𝑖𝑛𝑛 y 𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 son los voltajes de entrada y de salida respectivamente, del circuito

electrónico mapeo casa de campaña. Debe notarse que el bloque de conmutación mostrado en la

Figura 1.3 se realiza a través del nodo b.

Page 11: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

11

Figura 1.4 Diagrama esquemático del circuito electrónico mapeo casa de campaña.

𝑉𝑉𝑏𝑏 = 0 para V𝑖𝑖𝑛𝑛 < 𝑅𝑅1

2𝑅𝑅2

𝑅𝑅5

𝑅𝑅4 − 𝑅𝑅3𝑉𝑉𝑖𝑖𝑛𝑛

𝑅𝑅1+ 𝑅𝑅3

2𝑅𝑅2 para 𝑉𝑉𝑖𝑖𝑛𝑛 ≥ 𝑅𝑅1

2𝑅𝑅2 (1.4)

Así, la Ecuación (1.3) tienen un comportamiento equivalente al de la Ecuación (1.2) para

los valores de los componentes dados en la Tabla 1.1, y reemplazando 𝑉𝑉𝑖𝑖𝑛𝑛 y 𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 por 𝑥𝑥𝑛𝑛 y 𝑥𝑥𝑛𝑛+1,

respectivamente. En realidad, este conjunto de valores no es único ya que la Ecuación (1.3)

contiene más de un parámetro, por lo que un diseñador de circuitos tiene la libertad de escoger

los componentes en particular que satisfacen otras restricciones de diseño para su aplicación en

específico.

A pesar de las reactancias parásitas, el ancho de banda finito de los componentes activos y

otras perturbaciones experimentales, el circuito electrónico muestra un comportamiento igual al

del modelo matemático dado por la Ecuación (1.2). El circuito electrónico se montó sobre una

tarjeta de circuito impreso (PCB), en el que se usó el amplificador operacional LM324 [8]

alimentado con una fuente de poder de 15 V y puesto sobre un socket. El voltaje 𝑉𝑉𝑑𝑑𝑑𝑑 es

suministrado por una fuente variable de dc con un rango de salida de 0 - 30 V.

Page 12: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

12

Dispositivo Valor 𝑅𝑅1,2,3,4,7,8,10,12,13 1 kΩ Resistencia 𝑅𝑅5,6 5 kΩ Potenciómetro 𝑅𝑅11 100 kΩ Potenciómetro 𝐷𝐷1,2,3,4 1n1419 Diodo 𝑈𝑈1,2,3,4,5 LM324 Op. Amp.

Tabla 1.1. Valores de los componentes electrónicos empleados en la construcción del circuito electrónico

mapeo casa de campaña.

Y para tener una operación iterativa, ver Figura 1.2, el circuito se auxilia de un

microcontrolador DSPIC30f4013 [9] de la compañía Microchip, y dos IC convertidor D/A DAC0800

[10] de National Semiconductors con un tiempo de procesamiento de 100 𝜇𝜇𝜇𝜇 entre muestras de

voltaje. Obviamente, existen diferentes formas de desempeñar esta operación iterativa, pero esto

depende del diseñador y la aplicación.

El valor del parámetro de bifurcación 𝜇𝜇 se puede fijar a ciertos valores al ajustar los

potenciómetros R5 y R6, localizados en la retroalimentación de los amplificadores operacionales

U2 y U3. La relación entre los resistores R5 y R6 de la Ecuación (1.5) con el valor de la Ecuación

(1.2) se da sí 𝜇𝜇 = 𝑅𝑅6 y 𝑅𝑅5 = 2𝑅𝑅6 = 2 𝜇𝜇.

𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = 𝑅𝑅6

1𝑘𝑘Ω𝑉𝑉𝑖𝑖𝑛𝑛 −

0 para 𝑉𝑉𝑖𝑖𝑛𝑛 < 12

𝑅𝑅5

1𝑘𝑘Ω1

2− 𝑉𝑉𝑖𝑖𝑛𝑛 para 𝑉𝑉𝑖𝑖𝑛𝑛 ≥ 1

2

(1.5)

Simplificando la Ecuación (1.5).

𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = 𝑅𝑅6

1𝑘𝑘Ω 𝑉𝑉𝑖𝑖𝑛𝑛 para 𝑉𝑉𝑖𝑖𝑛𝑛 < 1

2𝑅𝑅5

2𝑘𝑘Ω(1 − 𝑉𝑉𝑖𝑖𝑛𝑛 ) para 𝑉𝑉𝑖𝑖𝑛𝑛 ≥ 1

2

(1.6)

Page 13: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

13

Por lo que al considerar diferentes valores de R5 y R6, el circuito puede mostrar parte de

su dinámica. La Figura 1.5 muestra parte del diagrama de bifurcaciones del circuito al sintonizar el

parámetro 𝜇𝜇, para valores de los resistores en el intervalo cerrado [1𝑘𝑘Ω, 4𝑘𝑘Ω].

En esta figura se pueden observar puntos fijos, oscilaciones periódicas, periodos doble y

caos. También se puede ver que el circuito exhibe el rango completo del comportamiento del

mapeo casa de campaña. De hecho, los resultados experimentales obtenidos de la dinámica de

este circuito están acorde con los resultados teóricos. Para 𝜇𝜇 = 2 en la Figura 1.6 se muestra una

serie de tiempo del voltaje de salida. Las mediciones para cada serie de tiempo experimental,

contienen 650 datos colectados para diferentes valores del parámetro de bifurcación 𝜇𝜇. El ruido

de la serie de tiempo 𝑟𝑟𝑛𝑛 se estimó por la siguiente ecuación:

𝑟𝑟𝑛𝑛 = 𝑥𝑥𝑛𝑛+1 − 𝑓𝑓(𝑥𝑥𝑛𝑛) (1.7)

Donde 𝑥𝑥𝑛𝑛 y 𝑥𝑥𝑛𝑛+1 son los datos experimentales del circuito mapeo casa de campaña, y 𝑓𝑓(. )

se da por la Ecuación (1.2). En la Figura 1.7 se muestra el histograma del ruido calculado para 650

datos de la señal del tiempo con 𝜇𝜇 = 2.

Figura 1.5. Diagrama de la bifurcación experimental del mapeo casa de campaña.

Page 14: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

14

1.3 Aplicación del circuito electrónico mapeo casa de campaña

En esta sección se muestran los resultados experimentales del circuito, como generador

de números aleatorios. La Figura 1.8 muestra una serie experimental de números

pseudoaleatorios generados con el circuito casa de campaña, tomando como condición inicial un

valor de 0.51 y una 𝜇𝜇 de 2. La serie de tiempo solamente muestra un bloque de 50 datos

experimentales con valores entre 0 y 1 que es el rango de operación del circuito.

Figura 1.6 Serie del tiempo de la dinámica caótica generada por el mapeo casa de campaña para 𝜇𝜇 = 2.

Figura 1.7. Histograma del ruido estimado por medio de la Ecuación (1.6).

Page 15: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

15

Figura 1.8. Datos experimentales.

Para analizar la aleatoriedad de los números generados por el circuito (conjunto de datos

de 1000 muestras) se realizan dos pruebas únicamente. La primera es realizada para determinar la

divergencia de los datos con respecto a la distribución uniforme, prueba de Kolmogorov- Smirnov.

Esta es una prueba apropiada para determinar cuando dos distribuciones de probabilidad

en una dimensión difieren. La Figura 1.9 muestra los resultados cuando esta prueba se aplica al

generador de números aleatorios. Los resultados obtenidos del análisis para la máxima desviación

estándar son de 𝛼𝛼 = 5% y desviación permitida de 𝛼𝛼 = 0.185072. Por lo tanto, no se puede

rechazar la hipótesis de distribución uniforme.

La segunda prueba se realiza para investigar el nivel de autocorrelación de los datos

experimentales, ver las páginas 38, 39 y 40 en [11]. Los resultados de esta prueba se muestran en

la Figura 1.10. Se aprecia que la autocorrelación decae muy rápido con el incremento de la

distancia, esto se toma como un indicador de la existencia de un comportamiento estable

independiente en los datos muestreados (la hipótesis de no autocorrelación no es rechazada). Ver

también las páginas 74 y 75 en [12].

En sistemas caóticos, existe una extrema sensibilidad por la dinámica del sistema con

respecto a las condiciones iniciales.

Page 16: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

16

Figura 1.9. Prueba de Kolmogorov-Smirnov

Figura 1.10. Autocorrelación de los datos muestreados. En esta figura 𝑘𝑘 es la separación relativa entre dos

muestras y 𝑅𝑅𝑦𝑦𝑦𝑦 (𝑘𝑘) es la autocorrelación.

Como un resultado, dos órbitas caóticas con diferente condición inicial, que permanecen

en una pequeña vecindad en un espacio vectorial, divergirán y no habrá correlación entre ellas.

Page 17: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

17

CAPÍTULO 2

CONVERSOR A/D DEL DSPIC30F4013 Y CONVERSOR D/A DAC0800

2.1 El microcontrolador DSPIC30F4013

Un Microcontrolador es un circuito integrado o más comúnmente llamado chip, que

cumple las funciones de cerebro de cualquier aplicación, y es responsable del buen

funcionamiento del circuito que gobierna. Como todo cerebro, este chip tiene que procesar alguna

información contenida en su memoria y de esta forma decidir qué hacer. A esta información que

debe tener el chip se le llama software o programa de aplicación. Microchip, el líder mundial de

los microcontroladores de 8 bits, ha desarrollado los DSC (Controlador Digital de Señal), que son

una combinación de microcontroladores clásicos con los recursos básicos de los DSP (Procesador

Digital de Señal). De esta forma los DSC ocupan el nivel intermedio entre los MCU y los DSP. En la

actualidad ya se comercializan más de 50 modelos.

El modelo que nos interesa en este caso es el DSPIC30F4013. Algunos de los rasgos más

característicos del microcontrolador son: arquitectura Harvard modificada, 84 instrucciones

básicas, ancho de instrucciones de 24 bits, y un ancho de datos de 16 bits. Puede almacenar 48

Kbytes en su memoria de programa, tiene una RAM de 2 Kbytes y una EEPROM de 1 Kbyte, una

velocidad de operación de 30 MIPS, 33 fuentes de interrupción, 16 registros de trabajo de 16 bits y

2 acumuladores de 40 bits.

Uno de los componentes fundamentales en un microcontrolador es el conversor A/D [13].

El presente trabajo se centra en el estudio del conversor integrado en el DSPIC30F4013,

mencionado anteriormente.

2.2 Conversor A/D de 12-bits

El conversor A/D de 12-bits permite la conversión de señales analógicas de entrada a

números digitales de 12 bits. Provee una velocidad de muestreo de 100,000 muestras por

segundo. Tiene hasta 16 entradas analógicas multiplexadas en un amplificador de muestreo y

Page 18: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

18

retención (sample & hold). La salida al amplificador es la entrada al conversor, que genera el

resultado. La referencia analógica de voltaje se puede seleccionar por software a las terminales

AVDD /AVSS o VREF+/VREF-. El conversor A/D posee la característica especial de funcionar con el

dispositivo en modo Sleep (si el oscilador está en RC).

El conversor tiene 6 registros de 16-bits

• Registro de Control A/D 1 (ADCON1)

• Registro de Control A/D 2 (ADCON2)

• Registro de Control A/D 3 (ADCON3)

• Registro de configuración de modo simple/diferencial (ADCHS)

• Registro de configuración del puerto A/D (ADPCFG)

• Registro de selección de los canales a muestrear (ADCSSL)

Los registros ADCON1, ADCON2 y ADCON3 controlan la operación del conversor. El

registro ADCHS selecciona los canales de entrada. ADPCFG configura los pines del puerto como

entradas analógicas ó entradas/salidas digitales. Los temas que se enumeran a continuación se

localizan en las hojas de datos dedicadas al modulo A/D, en ellas se puede encontrar a detalle las

distintas formas de configuración y operación del módulo.

1. El buffer de resultados

2. La operación de conversión

3. Selección de la secuencia de conversión

4. Programación del disparo de conversión

5. Interrumpir una conversión

6. Seleccionar el tiempo de conversión

7. Requisitos de la adquisición A/D

8. Modos de apagado

9. Funcionamiento del conversor en estado sleep o idle del procesador

10. Efectos del reset

11. Formatos de salida

12. Configuración de los pines del puerto analógico

13. Consideraciones de conexión

Page 19: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

19

2.3 El convertidor digital-analógico y analógico-digital

Los procesos que se dan en el mundo real producen señales analógicas cuya variación es

continua. La velocidad de esta variación a veces es muy lenta, como es el caso de las variaciones

de la temperatura; pero también pueden ser muy rápidas, como en un sistema de audio, la mejor

manera de describir los procesos analógicos es mediante números decimales y letras del alfabeto.

Por otra parte, en los microprocesadores y en las computadoras para representar números y letras

o símbolos se utilizan patrones binarios.

Es complicado guardar, manejar, comparar, calcular o recuperar datos de manera precisa

utilizando para ello tecnología analógica. En cambio las computadoras si son capaces de realizar

estas tareas rápidamente; pueden trabajar prácticamente con una ilimitada cantidad de

información, de manera precisa, utilizando para ello técnicas digitales. Debido a lo anterior surgió

la necesidad de contar con convertidores que sirvan para vincular entre sí a los mundos analógico

y digital. Mediante el convertidor analógico a digital (ADC) el mundo analógico se comunica con

las computadoras. Las computadoras se comunican con las personas y los procesos físicos

mediante convertidores digitales a analógicos (DAC).

2.4 Características de un DAC

Para explicar claramente las características más importantes de un DAC deben plantearse

tres preguntas:

Primera: ¿Cuántos valores de salida es posible obtener con un DAC?

Segunda: ¿en qué magnitud cambia el voltaje de salida en respuesta al cambio en la

palabra de entrada digital, al cambiar esta en un bit menos significativo (Least significant

bit, LSB)?

Tercera: ¿Cuál es la ecuación de entrada- salida del DAC mediante la cual se calcula el

voltaje de salida cuando se conoce la palabra de entrada digital.

Page 20: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

20

2.5 Resolución

En la Figura 2.1 se muestra el símbolo del circuito del DAC de 4 bits, así como sus

características de entrada-salida. Hay cuatro entradas digitales, lo que indica que se trata de un

DAC de 4 bits.

Figura 2.1 Símbolo del convertidor digital a analógico.

Por cada entrada digital se requiere una señal eléctrica que represente ya sea un 1 lógico o

un 0 lógico, D0 es el bit menos significativo (Least significant bit, LSB), D3 es bit más significativo

(most significant bit, MSB).

En la Figura 2.2 se grafica el voltaje de salida analógico en función de 16 posibles palabras

de entrada digitales. También se muestra el valor de v0 correspondiente a diversas palabras

digitales.

D3 D2 D1 D0 = entradas digitales

DAC V0 = salida analógica

Page 21: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

21

Figura 2.2 Gráfica del voltaje analógico de salida vs. Código digital de entrada para un DAC de 4 Bits

La resolución se define de dos maneras:

1. La resolución es la cantidad de valores de salida analógicos que se puede obtener

con un DAC. En el caso de un DAC de n bits:

𝑟𝑟𝑟𝑟𝜇𝜇𝑜𝑜𝑙𝑙𝑜𝑜𝑑𝑑𝑖𝑖ó𝑛𝑛 = 2𝑛𝑛 (2.1)

2. También se define la resolución como la relación del cambio de 1 LSB en las

entradas digitales.

Page 22: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

22

Para calcular la resolución de acuerdo con esta última definición, se necesita contar con

dos tipos de información que pueden obtenerse en hojas de datos del fabricante del dispositivo: el

voltaje de salida a escala total, V0fs, y la cantidad de entradas digitales, n. Se define a V0fs como el

voltaje que se obtiene cuando todas las entradas digitales son 1. Por lo tanto, la resolución es:

𝑟𝑟𝑟𝑟𝜇𝜇𝑜𝑜𝑙𝑙𝑜𝑜𝑑𝑑𝑖𝑖ó𝑛𝑛 = 𝑉𝑉0𝑓𝑓𝜇𝜇

2𝑛𝑛−1 (2.2)

2.6 Ecuación de entrada-salida

En el caso de un DAC, mediante una función de transferencia o ecuación de entrada-salida

se da respuesta a la pregunta: ¿en qué medida se modifica el voltaje de salida analógico como

respuesta a un cambio en una palabra de entrada digital? Para obtener esta ecuación se multiplica

la resolución por el cambio que se produce en los LSB. Expresado lo anterior en forma de

ecuación:

𝑉𝑉0 = 𝑟𝑟𝑟𝑟𝜇𝜇𝑜𝑜𝑙𝑙𝑜𝑜𝑑𝑑𝑖𝑖𝑜𝑜𝑛𝑛 𝑥𝑥 𝐷𝐷 (2.3)

En la que V0 es el voltaje de salida analógico, la resolución esta expresada en la Ecuación

(2.2) y D es el valor decimal de la entrada digital.

2.7 Características del ADC

2.7.1 Ecuación de entrada-salida

En la Figura 2.2 se grafica la salida digital de un ADC ideal de 4 bits en función de un

voltaje de entrada analógico. Al igual que en el caso de los DAC, la resolución de un ADC se define

de dos maneras. Primera: la resolución es la cantidad máxima de códigos digitales de salida. Esta

manera de definir la resolución del ADC es similar a la del ADC y a continuación se repite;

Page 23: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

23

𝑟𝑟𝑟𝑟𝜇𝜇𝑜𝑜𝑙𝑙𝑜𝑜𝑑𝑑𝑖𝑖ó𝑛𝑛 = 2𝑛𝑛 (2.4)

La resolución también se define como la relación del cambio necesario en el valor del

voltaje de entrada, Vi, necesario para producir una salida digital en la que todos los dígitos sean 1,

la resolución se calcula de la siguiente manera:

𝑟𝑟𝑟𝑟𝜇𝜇𝑜𝑜𝑙𝑙𝑜𝑜𝑑𝑑𝑖𝑖ó𝑛𝑛 = 𝑉𝑉𝑖𝑖𝑓𝑓𝜇𝜇2𝑛𝑛−1

(2.5)

Figura 2.3 Símbolo de un ADC 4 Bits

Figura 2.4 Características de entrada-salida de un ADC

ADC

D3 D2 D1 D0

Vi Entrada analógica

Page 24: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

24

La expresión más sencilla de la ecuación de entrada-salida de un ADC es la siguiente:

𝐶𝐶ó𝑑𝑑𝑖𝑖𝑑𝑑𝑜𝑜 𝑑𝑑𝑟𝑟 𝜇𝜇𝑠𝑠𝑙𝑙𝑖𝑖𝑑𝑑𝑠𝑠 𝑑𝑑𝑖𝑖𝑑𝑑𝑖𝑖𝑜𝑜𝑠𝑠𝑙𝑙 = 𝑟𝑟𝑒𝑒𝑜𝑜𝑖𝑖𝑒𝑒𝑠𝑠𝑙𝑙𝑟𝑟𝑛𝑛𝑜𝑜𝑟𝑟 𝑏𝑏𝑖𝑖𝑛𝑛𝑠𝑠𝑟𝑟𝑖𝑖𝑜𝑜 𝑑𝑑𝑟𝑟 𝐷𝐷 (2.6)

En la cual D es el valor decimal de la señal digital; o bien, D es igual a la cantidad de bits

presentes en la salida digital; D se calcula mediante la expresión:

𝐷𝐷 = 𝑉𝑉𝑖𝑖𝑟𝑟𝑟𝑟𝜇𝜇𝑜𝑜𝑙𝑙𝑜𝑜𝑑𝑑𝑖𝑖 ó𝑛𝑛

(2.7)

2.8 Convertidor digital a analógico de 8 bits: El DAC 0800

El DAC 0800 es un DACM (DAC Multiplidador) rápido y económico, encapsulado en un DIP

de 16 terminales (“pines”) en la Figura 2.5 se estudian sus principios de funcionamiento haciendo

referencia a la tarea que se realiza es sus terminales.

Las terminales 13 y 3 son las terminales de alimentación positiva y negativa

respectivamente, y su valor puede ir de ± 4.5 a ±18 V. Deben conectarse con capacitores de 0.1µF,

como se muestra en la Figura 2.5.

La flexibilidad del DAC 0800 aumenta si en vez de una entrada de referencia se utilizan dos

de ellas. Las terminales 14 y 15 trabajan con voltajes de referencia tanto positivos como negativos.

En el caso de la Figura 2.5 existe una entrada de voltaje de referencia positivo. Se puede ajustar la

corriente de escalera de entrada, Iref, muy fácilmente, desde 4µA hasta 4mA; su valor característico

es de 2mA. Se puede conectar el DAC de manera que se tenga una salida de voltaje unipolar o

bipolar como se muestra en la figuras 2.5 y 2.6 respectivamente, en esta tesis se utiliza la

configuración de salida unipolar.

Page 25: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

25

Figura 2.5 Conexión de un DAC-0800 para un voltaje unipolar.

Page 26: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

26

En las terminales de la 5 a la 12 se encuentran las entradas digitales. La número 5 es la del

bit más significativo (MSB), D7. La terminal 12 es la del bit menos significativo (LSB), D0. Las

terminales son compatibles con TTL o CMOS. La entrada lógica “0” es de 0.8 V, o menos. El “1”

lógico es de 2.0 V, o más, independientemente de los voltajes de alimentación. Por lo general, la

terminal 1, VLC está conectada a tierra. Y también se utiliza para ajustar el voltaje de umbral de

entrada lógica, VTH, de acuerdo con la igualdad VTH = VLC + 1.4 V. Estas entradas digitales controlan

ocho interruptores de corriente internos.

2.9 Aumento de resolución de conversores

Como se explicó en las secciones anteriores un conversor digital-analógico tiene como

entrada una señal digital y su salida es una señal analógica. El valor de la salida depende de una

tensión de referencia VREF suministrada al conversor.

Ahora sea la entrada Ain una señal (o palabra) digital de N bites de la forma:

011

22

11 22...22 NN

NNin aaaaA ++++= −

−− (2.8)

Donde los coeficientes ai (bites) pueden tomar los valores 0 ó 1. Se define aN como el bit

menos significativo (LSB) y a1 como el bit más significativo (MSB).

La señal de salida del conversor (Vo) viene dada por:

NREF

inoVAV2

= (2.9)

El esquema que debe seguirse se muestra en la Figura 3.10

Page 27: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

27

Figura 2.6 DAC0800 conectado como voltaje de salida bipolar.

Page 28: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

28

Figura 2.7 Construcción de un DAC de 12 bits a partir de dos de 8 bits

Teniendo en cuenta las ecuaciones 2.8 y 2.9, la salida de un conversor de 12 bits debe ser

de la forma:

REFO VcccV )2...22( 1212

22

11

−−− +++= (2.10)

Para los conversores A y B, tendremos las salidas VOA y VOB:

REFOA VaaaV )2...22( 88

22

11

−−− +++= (2.11)

REFOB VbbbV )2...22( 88

22

11

−−− +++= (2.12)

Teniendo en cuenta que en la entrada Bin se han anulado los 4 bits más significativos, tras

dividir la señal por 24 = 16 obtenemos:

Page 29: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

29

REFOB

OB VbbbbVV )2222(2

' 128

117

106

954

−−−− +++= (2.13)

Puede comprobarse que la salida VOUT = VOA + V’OB es justamente de la forma indicada en la

Ecuación 2.10. Los 8 bits más significativos corresponden a la entrada Ain y los 4 menos

significativos corresponden a los 4 bits menos significativos de la entrada Bin.

El montaje de la Figura 2.5 puede modificarse para construir un conversor de 12 bits si se

añade un segundo conversor, tal y como se muestra en la Figura 2.8 siguiendo el esquema de la

Figura 2.7. Las resistencias R1 y R2 constituyen un divisor de corriente para la salida del segundo

conversor. Es importante que el divisor de corriente divida exactamente por 16. Tome R1 del orden

de 1 KΩ. Mida el valor de R1 y utilice un potenciómetro para fijar el valor de R2 con la mayor

precisión posible.

Figura 2.8 Modificación del montaje de la Figura 2.5 para construir un conversor de 12 bits. Las conexiones de los conversores y los niveles de alimentación son iguales que en la Figura 2.5. La resistencia conectada al pin 14 del segundo conversor debe ser igual a la resistencia conectada en el primer conversor y a la resistencia

conectada entre los pines 6 y 2 del operacional.

Page 30: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

30

CAPÍTULO 3

EL AMPLIFICADOR OPERACIONAL

Uno de los dispositivos electrónicos más versátiles y de mayor uso en aplicaciones lineales

es el amplificador operacional, también conocido como OP AMP en ingles. En el mundo de la

electrónica los amplificadores operacionales son populares por su modo fácil de usar, y por sus

configuraciones sencillas además de ser de bajo costo. Se les da el termino de operacional debido

a que se pueden realizar operaciones matemáticas, es decir, sumar, restar, multiplicar incluso

resolver ecuaciones diferenciales, en la actualidad estas operaciones se realizan más rápidamente

en computadoras digitales con mayor velocidad y precisión, sin embargo la era digital no condena

la desaparición de los amplificadores operacionales. Conforme la tecnología avanza se hace más

frecuente el uso de microcomputadoras, microcontroladores, así como circuitos y sistemas

integrados para el procesamiento de señales, pero existen muchas aplicaciones digitales que

requieren de interfaces con amplificadores operacionales. En esta sección se presentan sólo las

configuraciones utilizadas en esta tesis.

3.1 Tecnología de amplificadores operacionales

Se utilizan varias técnicas para la fabricación de amplificadores operacionales, al inicio solo

existían los transistores bipolares, actualmente se han desarrollado transistores de efecto de

campo y están presentes dentro de los OP AMP, debió a que consumen corrientes muy pequeñas

permiten la variación de los voltajes dentro del límite del voltaje de alimentación.

Los transistores con tecnología MOS (metal-oxido-semiconductor) de los circuitos de salida

en el OP AMP permiten que esta varíe dentro de los límites de milivolts respecto de la fuente de

alimentación. Los fabricantes también han diseñado encapsulados dobles (2) y cuádruples (4). De

esta manera el encapsulado que solo tenía un OP AMP ahora puede tener dos o cuatro. Existen

varios tipos de encapsulados y tamaños pero no se profundizara en el tema.

Page 31: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

31

3.2 Símbolo y terminales del circuito

El símbolo del amplificador operacional que se da en la Figura 3.1 es un triángulo que

apunta en la dirección del flujo de la señal. Este componente tiene un número de identificación de

parte (NIP) colocado dentro del triángulo.

Figura 3.1. Símbolo del circuito para un amplificador operacional de propósito general.

3.3 Configuraciones utilizadas en esta tesis

3.3.1 Seguidor

Figura 3.2 OP AMP configurado como seguidor.

Se usa como un buffer, para eliminar efectos de carga o para adaptar impedancias

(conectar un dispositivo con gran impedancia y viceversa). Como la tensión en las dos patillas de

entradas es igual: Vout = Vin, la impedancia de entrada es infinita Zin = ∞.

Page 32: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

32

3.3.2 Inversor

Figura 3.3 OP AMP configurado como amplificador inversor.

El análisis de este circuito es el siguiente:

V+ = V- = 0

Definiendo corrientes:

𝑉𝑉𝑖𝑖𝑛𝑛− 0𝑅𝑅𝑖𝑖𝑛𝑛

= −𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 − 0𝑅𝑅𝑓𝑓

(4.1)

Y de aquí se despeja

𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = −𝑉𝑉𝑖𝑖𝑛𝑛𝑅𝑅𝑓𝑓𝑅𝑅𝑖𝑖𝑛𝑛

(4.2)

Para el resto del circuito el análisis es similar:

𝑍𝑍𝑖𝑖𝑛𝑛 = 𝑅𝑅𝑖𝑖𝑛𝑛 (4.3)

Por lo cual podemos controlar la impedancia por medio de Rin.

Page 33: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

33

3.3.3 No inversor

La ecuación de salida para esta configuración es la siguiente:

𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = 𝑉𝑉𝑖𝑖𝑛𝑛 (1 + 𝑅𝑅2

𝑅𝑅2) (4.4)

La impedancia de entrada es muy elevada:

𝑍𝑍𝑖𝑖𝑛𝑛 = ∞

Figura 3.4 OP AMP configurado como no inversor.

3.3.4 Sumador inversor

Es importante mencionar que la salida en esta configuración esta invertida, para resistencias independientes R1, R2,…, Rn.

𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = −𝑅𝑅𝑓𝑓(𝑉𝑉1𝑅𝑅1

+ 𝑉𝑉2𝑅𝑅2

+ ⋯+ 𝑉𝑉𝑛𝑛𝑅𝑅2

) (4.5)

La ecuación se simplifica si se utilizan resistencias del mismo valor. La impedancia de entrada se da de la manera siguiente: Zn = Rn.

Page 34: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

34

Figura 3.5 OP AMP configurado como sumador inversor.

Page 35: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

35

CAPÍTULO 4

CARACTERIZACION Y RESULTADOS DEL TENT MAP

En los capítulos del 1 al 3 se presentó la información por separado, en este capítulo se

presentan los resultados del circuito completo y las pruebas realizadas en cada parte. La

información se presenta de acuerdo al esquema 4.1.

Figura 4.1 Diagrama a bloques de las partes que conforman el TENT MAP.

Figura 4.2 Diagrama a bloques para las pruebas del ADC y DAC.

DSPIC 30F4013 ADC 12 bits

2 DAC 0800 DAC 12 bits

AMP_1 TENT MAP

AMP_2

51

15

Fuente 5V Potenciómetro A/D

dspic30f4013

D/A 2 DAC 0800

Page 36: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

36

Para verificar el correcto funcionamiento de convertidor analógico-digital de 12 bits del

DSPIC30F4013 y del convertidor digital-analógico de 12 bits (2 DAC 0800) se utiliza una fuente de

10V y un potenciómetro de 10 kΩ para variar el voltaje de 0 a 5V. El sistema se conecta de acuerdo

al Esquema 4.2.

En la Figura 4.3 se muestra el diagrama del circuito para el DSPIC30F4013 el cual es

alimentado con un voltaje de 5V DC y esta alimentación también sirve de referencia para el

módulo ADC, es decir, sólo se pueden muestrear señales analógicas iguales o menores a 5 volts, si

la señal es mayor al voltaje de referencia el microcontrolador sólo vera la parte correspondiente al

voltaje de referencia. En la Figura 4.4 se puede observar el circuito impreso para el circuito de la

Figura 4.3. La señal analógica es sensada por el microcontrolador utilizando la terminal 10, el

funcionamiento en general se explica en la práctica 5 del Apéndice A, el proceso de muestreo es

totalmente manual, los puntos importantes a considerar para la configuración son:

• Muestreo de una sola entrada analógica

• Inicio del muestreo manual

• Duración del muestreo manual

• Inicio de la conversión manual

• La referencia positiva y negativa se toma de la alimentación.

El circuito cuenta con tres LED’s indicadores: RB2 enciende después de inicializar el

circuito, RB3 prende, se apaga y después se queda encendido, RB4 indica que el modulo ADC ha

sido inicializado y ha comenzado a funcionar, en realidad los dos primeros se utilizan para

comprobar el funcionamiento de los Timers y para verificar que el microcontrolador está

alimentado. En la Figura 4.5 se muestra el diagrama correspondiente al circuito convertidor

Digital-Analógico, realizado a partir de 2 IC DAC0800, existe la manera de probar por separado

ambos convertidores aquí se hará conjuntamente.

El circuito convertidor Digital-Analógico es alimentado con ±15 V, el voltaje de referencia

es de 5V, pero; puede ser variable para cuestiones de ajuste en el voltaje de salida. En la Figura 4.6

se muestra la placa del circuito impreso correspondiente al circuito de la Figura 4.5. Para la

conversión de corriente a voltaje se utiliza el amplificador operacional OP07CN de ST

MICROELECTRONICS, es de bajo costo, es particularmente utilizado para aplicaciones de

instrumentación, de bajo ruido y cuenta con offset extremadamente bajo 150 µV máximo.

Page 37: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

37

Figura 4.3 Diagrama para el convertidor Analógico-Digital del microcontrolador dsPIC 30F4013.

Page 38: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

38

Figura 4.4 Placa PCB (2 caras) correspondiente al diagrama de la Figura 4.3

Requiere de muy poca corriente de entrada (1.8nA) y alta ganancia (400V/mV), amplio

rango de voltaje de alimentación (±3V a ±22V) [14].

Las conexiones entre ambos circuitos se muestran en la Figura 4.7. La terminal del dsPIC

que corresponde a D5 no se utiliza y no es tomada en cuenta en este diagrama, tampoco se toman

en cuenta del DAC 0800 (IC 2) los bits D4_D7 por que estos se cancelan.

Page 39: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

39

Figura 4 .5 Circuito convertidor Digital-Analógico 12 bits.

Page 40: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

40

Figura 4.6 Placa PCB correspondiente al circuito de la Figura 4.5.

Figura 4 .7 Interconexiones entre el ADC Y el DAC.

2 IC DAC0800 DAC 12 Bits

DSPIC 30F4013 ADC 12 Bits

MSB-------------------------------------------------------------------LSB

PUERTO F F6------------------------------F0

PUERTO D D4------------------------D0

D7_________________D0 IC 1

D3_________D0 IC 2

Page 41: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

41

Se hace variar el voltaje de entrada (analógica) conectado a la terminal 10 del

DSPIC30F4013 con incrementos de 1 Volt. Se inicia primero con una señal de 1 Volt de entrada, las

gráficas obtenidas se muestran a continuación:

Figura 4 .8 Un volt de entrada línea roja, un volt de salida línea verde.

Page 42: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

42

Figura 4 .9 Dos volts de entrada línea roja, dos volts de salida línea verde.

Figura 4 .10 3 volts de entrada línea roja, 3 volts de salida línea verde.

Page 43: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

43

Figura 4 .11 4 volts de entrada línea roja, 4 volts de salida línea verde.

Figura 4 .12 Entrada 5volts línea roja, salida 5 volts línea verde.

Page 44: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

44

Como se puede apreciar en todas las gráficas la entrada es más ruidosa que la salida, el

ruido tiene altas frecuencias por lo tanto el micro actúa como filtro natural debido a que la

frecuencia de muestreo es baja. El error de entrada con respecto de la salida se minimizó

ajustando el voltaje de referencia de los IC´s DAC 0800.

Se realizaron pruebas con varios tipos de señal, enseguida se muestra una gráfica

(Figura 4 .13) donde se puede observar que la entrada que corresponde a una señal triangular con

una amplitud de 5V pico-pico. La salida que se ve en color verde es prácticamente la misma señal.

Esta señal triangular es utilizada para ajustar todas las partes de este proyecto en “circuito

abierto”.

Figura 4 .13 Prueba con una señal triangular.

Page 45: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

45

Las figuras 4.14 y 4.15 corresponden respectivamente al diagrama eléctrico y circuito

impreso del bloque llamado AMP_1, este circuito se utiliza para disminuir la ganancia a 15 de la

señal proveniente de los convertidores, esto debido a que el módulo TENT MAP debe trabajar con

voltajes de entrada mayores que cero o menores e iguales a 1 Volt. El IC LM324 es un amplificador

operacional cuádruple de propósito general, el primer OP AMP está configurado como

amplificador inversor de ganancia variable, luego para recuperar la señal original se emplea el

segundo operacional configurado como inversor de ganancia unitaria y para acoplar impedancias

el tercer amplificador operacional se configura como seguidor.

La respuesta que se puede observar en la Figura 4.16 es obtenida debido a una señal

triangular de entrada (color rojo) y está en color verde vista en diferente escala para poder

apreciar la diferencia en amplitud.

Figura 4 .14 Diagrama eléctrico AMP_1.

Page 46: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

46

Figura 4.15 Placa PCB correspondiente a circuito de la Figura 4.14.

Figura 4 .16 Respuesta AMP_1.

Page 47: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

47

El ajuste del bloque TENT MAP se puede hacer de dos formas, una es utilizando una señal

triangular y otra mediante las fórmulas es decir se agarra cualquier valor entre 0 y 1 luego se

calcula el valor teórico de salida para ajustar cada punto del bloque. En la Figura 1.4 se muestra el

diagrama esquemático del TENT MAP, los puntos importantes son a, b, c y Vout.

Es mucho más fácil hacer el ajuste con la señal triangular sin offset con amplitud de 1V por

lo tanto se hará de esa manera, esto debido a que se hace para todos los puntos del rango de

entrada. Los amplificadores operacionales son alimentados con ± 15 V y se requiere de una fuente

de -0.5 V la cual debe ser muy precisa por que las variaciones afectan directamente la salida.

En el primer operacional U1 en la Figura 1.4 se suma la señal de entrada con la fuente de -

0.5 V, entonces el punto a es la entrada invertida montada sobre la fuente de DC -0.5 V, el

resultado se muestra en la Figura 4.18.

Figura 4 .17 Circuito impreso del bloque TENT MAP en 2 caras.

Page 48: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

48

Figura 4 .18 Tent Map circuito abierto, comparación del punto A respecto a la entrada. Entrada color rojo, punto A color verde.

Como se expuso en la teoría del capítulo 1, el parámetro de la bifurcación es µ = 2, esto

significa que el punto b tendrá valores entre (0,2) y el punto c estará entre (0,-2). El punto b se

puede ajustar variando el valor del potenciómetro R5. El operacional U2 junto con los diodos

rectificadores corta la señal proveniente de U1 dejando pasar solo el lado positivo y R5 es el ajuste

de ganancia. La gráfica en el punto b se muestra en la Figura 4.19.

Page 49: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

49

Figura 4 .19 Tent Map circuito abierto, comparación del punto B respecto a la entrada. Entrada color rojo, punto B color verde.

U3 está configurado como amplificador inversor por lo tanto invierte y amplifica la señal

de entrada, R6 es el ajuste de la ganancia, la Figura 4.20 muestra el resultado en el punto c.

En el último operacional se hace la suma de los puntos b y c, está configurado como

amplificador inversor de ganancia unitaria, la salida de este es el resultado final del circuito, la

Figura 4.21 muestra una comparación entre la entrada y la salida del circuito TENT MAP.

Page 50: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

50

Figura 4 .20 Tent Map circuito abierto, comparación del punto C respecto a la entrada. Entrada color rojo, punto C color verde.

Figura 4 .21 Tent Map circuito abierto, comparación de la salida respecto a la entrada. Entrada color rojo, salida color verde.

Page 51: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

51

Por último el resultado final se muestra en la Figura 4.22, esto se hace graficando la

entrada en relación con la salida para obtener la figura llamada TENT MAP.

Figura 4 .22 Tent Map circuito abierto, gráfica entrada contra salida (TENT MAP)

La salida del TENT MAP está entre (0,1) Volts es necesario amplificarla 5 veces para que la

señal este entre (0,5) Volts, como el convertidor Analógico a Digital es de 12 bits es mejor trabajar

con la máxima amplitud posible en este caso es de 5V.

Page 52: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

52

Figura 4 .23 Diagrama esquemático para el módulo AMP_2.

La Figura 4.23 muestra el circuito para amplificar la señal que viene del módulo TENT

MAP, es un amplificador operacional LM324, el primer operacional está configurado como

seguidor, después le sigue un amplificador no inversor donde la ganancia se ajusta por medio de

VR1, y al final de nuevo se utiliza un seguidor para acoplar impedancias con el microcontrolador. El

circuito impreso se muestra en la Figura 4.24 y la respuesta en la Figura 4.25.

Figura 4 .24 Circuito impreso correspondiente al modulo AMP_2.

Page 53: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

53

Figura 4 .25 Respuesta AMP_2.

La calibración y caracterización en circuito abierto esta ahora terminada y esto es muy

importante porque no se puede trabajar en circuito cerrado sin antes haber calibrado el circuito

en lazo abierto, debido a que no funcionaria pues arrojaría datos erróneos.

Los resultados que se presentan a continuación fueron obtenidos utilizando el circuito

TENT MAP en lazo cerrado como se muestra en la Figura 4.1. Se muestran las gráficas a partir del

bloque AMP_1, como se ha presentado antes este circuito reduce la señal de 5 Volts pico-pico a 1

Volt pico-pico y su respuesta se observa en la Figura 4.26. La semilla se fija en 760 milivolts.

Page 54: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

54

Figura 4 .26 Respuesta en lazo cerrado para el bloque AMP_1

Como se generan los números de manera aleatoria la señal cambia de forma

constantemente. La señal obtenida a partir de AMP_1 es la entrada al bloque TENT MAP, este

consta de 3 partes importantes a, b, c las cuales se muestran en las figuras siguientes:

Page 55: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

55

Figura 4 .27 Tent Map circuito cerrado, comparación del punto A respecto de la entrada. Entrada color rojo, punto A color verde.

Figura 4 .28 Tent Map circuito cerrado, comparación del punto B respecto de la entrada.

Entrada color rojo, punto B color verde.

Page 56: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

56

Figura 4 .29 Tent Map circuito cerrado, comparación del punto C respecto de la entrada. Entrada color rojo, punto C color verde.

Figura 4 .30 Tent Map circuito cerrado, comparación de la salida respecto de la entrada. Entrada color rojo, salida color verde.

Page 57: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

57

En la Figura 4.30 se observa la entrada y la salida, es curioso ver que las dos señales son

casi la misma solo que la salida que está en color verde tiene cierto desfasamiento. Como se vio en

la Figura 5.21 la frecuencia de la señal de salida es el doble de la entrada. De estas dos señales se

forma el TENT MAP, este resultado se muestra en la Figura 4.31.

Figura 4 .31 Tent Map circuito cerrado, gráfica entrada contra salida (TENT MAP)

Tanto Y como X se tomaron en un intervalo de tiempo muy corto por lo tanto la casa de

campaña de la Figura 4.31 está incompleta, además; como son puntos es lógico que se vea de esa

manera a diferencia de cuando se obtuvo el resultado en circuito abierto donde se ve la gráfica

completa puesto que la señal contiene más puntos.

Page 58: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

58

Figura 4 .32 Tent Map circuito cerrado, gráfica roja salida Tent Map (entrada al AMP_2), gráfica verde (salida AMP_2) entrada al Dspic.

Para lograr la retroalimentación se amplifica la salida del TENT MAP a 5 volts, esta señal se

observa en la Figura 4.32. El diseño de los diagramas esquemáticos de cada una de las secciones

de esta tesis se hizo utilizando el programa PCB Wizard 3.50 Professional Edition que es de fácil

manejo, este programa tiene la capacidad de transformar los diagramas esquemáticos en circuitos

impresos por lo tanto se utilizó esta herramienta, algunos circuitos impresos se diseñaron en dos

caras para facilitar conexiones además de diseñarlas con un tamaño suficiente para evitar

confusiones. Todos los módulos excepto el del DSPIC cuentan con entrada y salida de voltaje, esto

ayuda a reducir la cantidad de cables en cada circuito, es decir a partir del módulo de los DAC 0800

cuentan con opción para alimentación independiente y tienen un conector para que por medio de

este se alimente el circuito consecutivo, en este conector también se incluye la señal de entrada o

salida de la señal según se utilice. La tarjeta TDS2000 de la compañía Tektronix, un osciloscopio

digital TDS 2012 también de la compañía Tektronix y una computadora personal HP COMPAQ

Pentium 4 fueron las herramientas necesarias para la adquisición de los datos, en este caso las

gráficas.

Page 59: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

59

CONCLUSIONES

El nuevo circuito electrónico propuesto se diseñó para generar el mapeo casa de campaña,

teniendo como característica su fácil implementación, debido a que usa solamente componentes

analógicos; como lo son amplificadores operacionales, comparadores, diodos y resistencias. Esto

hablando solo del módulo TENT MAP y para cuestiones de retroalimentación fue necesaria una

etapa digital que hizo la función de retención y actualización de datos generados.

El comportamiento experimental se probó y comparó, contra el comportamiento

numérico dado por el modelo matemático del mapeo casa de campaña, donde; se obtuvieron los

resultados esperados, el circuito mapeo casa de campaña reproduce todo el rango conocido del

comportamiento. Sin embargo aunque estos son muy similares pueden variar en un proceso real

debido a que las características de algunos componentes electrónicos no siempre son ideales.

Esta es la principal desventaja que caracteriza a un sistema regido por la teoría del caos,

pequeños cambios en las condiciones iniciales generan grandes cambios en la salida del sistema y

más aun cuando se trabaja con componentes analógicos por la susceptibilidad al ruido; sin

embargo, debido a las características de la función casa de campaña esto puede significar una gran

ventaja si en vez de hablar de ruido hablamos de términos forzadores, lo cual toma relevancia

cuando se tiene un circuito autónomo, y se hace aun más favorable si el interés se centra solo en

la generación de las secuencias por periodos cortos.

Otra característica importante tanto en un sistema modelado por computadora como en

uno modelado físicamente es que aun cuando las condiciones iniciales sean exactamente iguales

la resolución con la que se manejan los cálculos afecta significativamente los resultados, ahora si

se compara con algún fenómeno complejo solo se obtendrá una idea de su comportamiento, no

la descripción exacta del mismo porque en un proceso real las condiciones están cambiando

constantemente, como un ejemplo tenemos las ecuaciones de Lorenz que describen el modelo

climático de la tierra y aunque realmente funcionan es muy difícil acertar en la predicción del

clima pero si nos da una idea de lo que va pasar , como por ejemplo la trayectoria que sigue un

huracán.

Page 60: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

60

Entonces dos paquetes de números generados bajo la misma condición inicial pero con

distinta resolución tomaran caminos distintos, además una importante observación encontrada es

que un pequeño desajuste en los parámetros de control genera un desorden en todo el sistema y

provoca que las secuencias generadas pierdan orden respecto a las generadas con el modelo

teórico, entonces para reducir esta complicación es necesario emplear componentes de mucha

calidad para tener una mejor precisión en sus características, esto por supuesto eleva el costo de

la implementación, pero el costo va de la mano del tipo de método empleado.

En un proceso como el utilizado en esta tesis resultaría complicado tratar de sincronizar

dos sistemas iguales para que trabajen en tiempo real; pero, existen avances en esta área de la

investigación que lo hacen posible y representaría una muy buena perspectiva para enmascarar

señales en aplicaciones de comunicación, a esta técnica se le conoce como sincronización forzada.

La técnica de construcción es simple y la metodóloga se puede extender a otros tipos de

mapas, tales como los lineales a pedazos o mapas por tramos suaves, incluso podría tenerse un

conjunto de ellas para realizar alguna aplicación como en redes neuronales.

Este proyecto queda abierto para otras aplicaciones no consideradas en este trabajo, el

diseño no es único lo cual significa que dependiendo de la aplicación puede tener tantas

modificaciones como sea posible.

Existen muchos resultados teóricos relacionados con el tema de mapeos ya sea continuos

o discretos y en general la teoría del caos abarca casi cualquier fenómeno físico natural, biológico

e incluso social, economía, ingeniería, etc. Y cada vez es más familiar la relación que existe con

todas las ramas de la ciencia moderna.

Page 61: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

61

APÉNDICE A

MANUAL DE PROGRAMACIÓN Y CONSTRUCCIÓN DE PROYECTOS, UNA INTRODUCCIÓN UTILIZANDO LA FAMILIA DE MICROCONTROLADORES DSPIC30F DE MICROCHIP

A1.1 Introducción

Facilitar las practicas a futuros estudiantes acerca de los microcontroladores de la familia

DSPIC30F es la idea principal de este apartado, actualmente existen algunos libros que tratan

sobre estos dispositivos, sin embargo es necesario contar primero con las bases necesarias para su

entendimiento, como por ejemplo dominar el lenguaje de programación en ensamblador y

muchas veces esto resulta ser un gran obstáculo para el autoaprendizaje, además estos

dispositivos son relativamente nuevos por lo tanto es difícil encontrar información que ayude a

entender fácil y rápidamente el funcionamiento de estos dispositivos, este es un sencillo manual

de construcción de pequeños proyectos utilizando microcontroladores DSPIC30F de microchip con

programación en C que es más conocido para algunos.

A1.2 Práctica 1, Construcción de un sistema mínimo

Para comenzar con la familiarización con los microcontroladores de esta gama es

necesario armar un circuito sencillo pero que facilitara su uso, programación y configuración, para

lo cual es necesario tener el siguiente material:

Cantidad Descripción 1 Dspic familia 30f (ej. Dspic 30f4013) 1 Resistencia de 10kΩ 1 Resistencia 1kΩ 2 Capacitor 33pf 1 Cristal 4.0 MHz 1 Led 1 Protoboard

Tabla A1.1 Lista de material para el armado del sistema mínimo.

Page 62: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

62

Las conexiones son como se muestra en la Figura A1.1, se utiliza un cristal de 4.0 MHz

conectado entre los pines 13 (OSC1) y 14 (OSC2) con un capacitor de 33 pf en cada pin, los

capacitores c1, c2, c3 y c4 son opcionales pero es recomendable ponerlos para evitar ruido que

pueda provenir de la alimentación que en este caso debe de ser de 5 volts, el pin 1 del micro va

conectado a una resistencia de 10kΩ la cual se conecta al voltaje de alimentación y su respectivo

capacitor opcional c7 supresor de ruido. Para poder visualizar el funcionamiento del sistema se

conecta a la pata 19 (RD3) un led en serie con una resistencia de 1kΩ.

Figura A1.1 Conexiones para un sistema mínimo.

Page 63: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

63

La segunda parte del proyecto es la construcción del software es decir la programación, sin

embargo primero el sistema debe contar con un puerto de lectura y escritura el cual varía un poco

dependiendo del tipo de programador que se va a utilizar, en este caso se utiliza el programador

llamado MASTER PROG USB adquirido por internet de la empresa EDUTRONICA, el puerto de

programación se denomina ICSP por sus siglas en ingles que significa In Circuit Serial

Programming, este permite que el PIC pueda ser programado desde el mismo circuito de

aplicación.

En la Figura A1.2 se muestra el sistema mínimo con el puerto ICSP, este puerto ya está

configurado en el programador por lo tanto solo es cuestión de conectarlo al circuito de

aplicación.

A1.3 Uso del puerto ICSP

Para programar por medio del ICSP se hace uso de 5 señales básicas que poseen todos los

microcontroladores de las familias 10Fxxx, 12Fxxx, 16Fxxxx, 18Fxxxx, 18FxxJxx, 24FJxxxx,

dsPIC30Fxxxx y dsPIC33FJxxxx de Microchip, dichas señales son:

PGD o ICSPDAT (Datos seriales que se escriben o leen del PIC)

PGC o ICSPCLK (Reloj serial que controla la comunicación con el PIC)

MCLR o VPP (Voltaje de programación para escribir o programar)

VDD (Voltaje de 5V ó 3.3V de alimentación)

VSS (Tierra o GND)

Todas las señales (a excepción de VDD) deben ser generadas por el programador, la forma

en cómo se conecta el ICSP al PIC se muestra en la Figura A1.3.

Page 64: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

64

Figura A1.2 Sistema mínimo con conexión para puerto ICSP

Page 65: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

65

Figura A1.3 Recomendación para el uso del puerto ICSP

A1.4 Precauciones al usar el ICSP

Como se muestra en la Figura A1.3 las terminales PGD (ICSPDAT) Y PGC (ICSPCLK) se aíslan

del circuito de aplicación por medio de resistencias, estas pueden tener un valor de 470Ω y 1kΩ

(dependiendo de la corriente de carga, esto es solo en el caso de que se estén utilizando en el

circuito de aplicación) si es posible es mejor desconectar estas dos terminales provisionalmente

del circuito.

Si se usa un botón de RESET, este se conecta en paralelo con el capacitor de de 0.1µF. El

voltaje VDD que provee el programador, sólo puede soportar la pequeña corriente que requiere el

PIC, por lo tanto si se va usar el VDD únicamente se debe conectar el PIC (pueden conectarse otros

periféricos como pantallas LCD, optoacopladores y LED´s, siempre y cuando la corriente total no

sea mayor a 100mA), sin embargo se puede alimentar todo el circuito con una fuente externa y

entonces se deja el VDD del programador sin conectar. NUNCA usar el VDD del programador y la

alimentación externa al mismo tiempo.

Page 66: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

66

Los dispositivos de bajo voltaje (VDD = 3.3V), como las series 18FxxJxx, 24FJxxxx y

33FJxxxx requieren de un voltaje de alimentación externa y deben ser programados por medio del

puerto ICSP, usando todas las señales excepto VDD.

A1.5 El programador MASTER-PROG USB

El programador MASTER-PROG USB fue diseñado para brindar un optimo desempeño y

versatilidad de uso con el puerto USB para versiones 1.1 y 2.0, su controlador interno emplea

tecnología CMOS y por lo tanto deben tomarse ciertas precauciones al utilizar el MASTER-PROG

USB, entre las cuales están las siguientes:

1. Sujetar el programador de preferencia por sus esquinas y cuando no esté en uso guardarlo

en una bolsa antiestática.

2. El puerto USB permite la conexión/desconexión de dispositivos sin apagar la PC, sin

embargo, se debe evitar que el programador sea conectado y/o desconectado

rápidamente, se deben dejar pasar al menos 10 segundos entre desconexiones para dejar

que el operativo reconozca al dispositivo y no se produzcan errores o daños en el sistema.

3. Evitar conectar el PIC-Prog a la PC cuando tenga un pic de bajo voltaje insertado en las

bases ZIF o conectado al puerto ICSP a menos que se esté utilizando una alimentación

externa de 3.3V.

4. El MASTER-PROG USB (PIC-Prog) está preparado para poder intercambiar los PIC´s sin

necesidad de ser desconectado del puerto, sin embargo muchas veces el chasis de la

computadora carece de una buena conexión a tierra, la estática puede producir daños en

el programador o bien en el PIC por lo tanto se recomienda utilizar una pulsera

antiestática.

A1.6 Uso del MPLAB Y MPLAB C30 compiler

Para continuar con la segunda parte del proyecto es necesario tener instalado el MPLAB

[15] de preferencia la última versión, para poder programar en C es importante instalar en MPLAB

el compilador C30 [16], el programa y el compilador se pueden descargar desde la pagina Web de

Microchip. Luego se crea un nuevo proyecto con el siguiente programa con el nombre que sea.

Page 67: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

67

Cuando se tenga escrito el archivo, en la ventana del proyecto se le agrega el archivo a la

carpeta “Source Files”. El siguiente paso es compilar el programa. Para ello se utiliza la opción

“Build All”, a menos que no existan errores en el programa veremos en la ventana de salida el

mensaje “BUILD SUCCEDED” seguido de la fecha. Entonces ya tenemos la versión binaria del

programa lista para cargarse al microcontrolador. Como último paso conectamos el programador

a la PC y ejecutamos el “MASTER PROG”, esperamos a que el programa detecte al programador,

en la pestaña de “Dispositivo” seleccionamos la familia “dsPIC 30 y aparecerá el mensaje

“dispositivo encontrado”.

Ejecutar la opción “Abrir Hex“ en la barra de herramientas para buscar el archivo con

extensión “.Hex” con el nombre del proyecto creado, luego con la opción “ESCRIBIR” grabamos

nuestro programa al microcontrolador, el cual inmediatamente comenzara a ejecutarse.

1. /*Programa1.C*/

2. #include <p30f4013.h>

3. //****************** Bits de configuracion ****************** 4. _FOSC(CSW_FSCM_OFF & XT_PLL16); // XT con 16xPLL 5. _FWDT(WDT_OFF); // Desabilita el watch-Dog 6. _FBORPOR(PBOR_ON & BORV_20 & PWRT_16 & MCLR_DIS); // Reset si viltage <2.0 Volts 7. // espera 16ms al energizarse y 8. // reset habilitado

9. _FGS(CODE_PROT_OFF); // proteccion de codigo DESHABILITADA

10. //******************************************************

11. int main(void); // Prototipo funcion main

12. //***************** programa principal ******************** 13. int main(void) 14. TRISD=0x0000; 15. LATDbits.LATD3=1; 16.

Page 68: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

68

Explicación del programa

El código fuente que se muestra en el paso 9 contiene números de línea para facilitar su

explicación: En la línea 2 se incluye el archivo de cabecera para el dsPIC 30F4013. En la línea 4

comienza la configuración del microcontrolador:

• La función FOSC() configura el oscilador:

o CSW_FSCM_OFF (Clock Switch Fail Safe Clock Monitor). Deshabilita el cambio

a oscilador interno cuando falle el externo.

o XT_PLL16. Define un oscilador XT con un multiplicador igual a 16. Por ejemplo

si el cristal es de 4 Mhz se multiplica por 16 para tener una frecuencia de

oscilación de 64Mhz.

• La función _FWDT() es para encender o apagar el “Watch Dog”.

• La función _FBORPOR() es para establecer algunas opciones de requerimientos

eléctricos:

o PBOR ON u OFF. Activa o desactiva la opción de “Power-on reset” y “Brown-

out reset”. “Power-on reset genera un reset cuando se energiza el

microcontrolador. Para más información consultar en las hojas de datos de la

familia 30f la sección de reset.

o BORV. Establece el voltaje al que se genera un “Brown-out reset” cuando el

voltaje de alimentación cae por debajo de él.

o PWRT_16. Establece el tiempo que el microcontrolador va esperar para

empezar a funcionar después de ser energizado. En este caso es de 16

milisegundos, es para esperar a que el voltaje de alimentación se estabilice.

o MCLR_DIS. Deshabilita el “Master Clear Reset”.

• La función FGS () habilita o deshabilita la protección por código, si se habilita no se puede

leer ni escribir el microcontrolador.

• En la línea 16 comienza el programa principal.

• En la línea 17 se configura el puerto D como salida.

• En la línea 18 se pone un uno lógico en el bit RD3 (pin 19).

En la línea 20 termina el programa.

Page 69: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

69

Es importante mencionar que el programa se reinicia automáticamente después de terminar

por lo tanto aunque no es visible al colocar un LED este prende y apaga, para observar mejor es

necesario ver la señal con un osciloscopio, hasta aquí abarca la Práctica 1.

A1.7 Práctica 2, los puertos de entrada y salida

El objetivo de esta práctica es experimentar con los puertos de E/S, se utiliza un push-

button para prender y apagar un led. El armado del circuito es como se muestra en la Figura A1.5.

Ver Sección 7.0 de las hojas de datos del dsPIC.

El led se conecta a la patita 35 (RB12) a través de una resistencia de 1KΩ y el push -button

se conecta a la patita 36 (RB11) y a +V, y la otra terminal se conecta a tierra. Todos los puertos

tienen tres registros asociados, uno de configuración de entrada o salida, el TRISx, si cualquier bit

del registro TRIS es puesto a 0 entonces se configura como salida, si el bit se pone en 1

corresponde a una entrada. Uno de entrada, el PORTx y uno de salida, el LATx.

Además el puerto B tiene otro registro de configuración, el ADPCFG que se usa para

configurar las entradas analógicas o digitales, esto debido a que el puerto B esta compartido con el

convertidor analógico digital. Si cualquier bit del registro ADPCFG es puesto a 1, la patita asociada

a ese bit es una entrada digital, en cambio si el bit es puesto a 0 entonces es una entrada

analógica. Cada bit del ADPCFG después de un reset contiene un cero.

Page 70: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

70

Figura A1.5 Circuito para la práctica número dos.

Page 71: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

71

Programa:

Explicación del programa

En la línea 11 comienza el programa principal, en la línea 12 se configura todo el puerto D

como salida, en la línea 13 se pone el bit RD3 (pin 19) como un 1 lógico para encender el led.

En la línea 14 y 15 se configura el puerto B para que el bit RB12 sea salida y todos los

demás bits sean entradas digitales.

En la línea 16 se crea un ciclo infinito, si el push-button no está presionado RB11 lee +V o

sea un uno lógico y el led conectado en la patita que corresponde a RB12 (pin 35) permanece

encendido.

1. /*programa2.c*/

2. #include<p30f4013.h>

3. //************************** BITS DE CONFIGURACION ********************************* 4. _FOSC(CSW_FSCM_OFF & XT_PLL16); //XT con 16PLL 5. _FWDT(WDT_OFF); //Deshabilita el watch_dog 6. _FBORPOR(PBOR_ON & BORV_20 & PWRT_16 & MCLR_DIS); 7. _FGS(CODE_PROT_OFF); // proteccion de codigo DESHABILITADA

8. //**********************************************************************************

9. int main(void); // Prototipo funcion main

10. //***************** programa principal ********************

11. int main (void) 12. TRISD=0x0000; 13. LATDbits.LATD3=1; 14. TRISB = 0xEFFF; //1110 1111 1111 1111 15. ADPCFG = 0xFFFF; //Todas entradas digitales

16. while(1) 17. if(PORTBbits.RB11 == 0) 18. LATBbits.LATB12 = 0; 19. else 20. LATBbits.LATB12 = 1; 21. 22.

Page 72: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

72

Si el push-button es presionado, entonces +V se va atierra a través de la resistencia y RB11

lee un cero lógico por lo tanto se apaga el led en RB12.

A1.8 Práctica 3, el temporizador (Timer)

Esta práctica tiene como objetivo entrenarse en el uso del temporizador (Timer) ver

sección 9.0 de las hojas de datos del dsPIC y la sección 12.0 del manual de referencia DS70059D

para entender la configuración del Timer, se utiliza el mismo circuito de la practica número dos

Figura A1.5.

Primero revisamos unos sencillos conceptos.

Fosc = Frecuencia de oscilación. En este caso se utiliza un cristal de 4Mhz y un

multiplicador de 16, se obtiene Fosc = 4*16 = 64Mhz.

Fcy = Frecuencia de instrucción. El dsPIC realiza una instrucción cada 4 Fosc, por lo tanto,

el Fcy = Fosc/4 = 16Mhz.

Tfosc = Periodo de oscilación. Tfosc = 1/Fosc = 1/64Mhz = 15.625ns.

Tcy = 1/Fcy = 1/16Mhz = 62.5ns.

Esto significa que el dsPIC con un cristal de 4Mhz y un multiplicador de frecuencia de 16,

es capaz de realizar 16 millones de instrucciones por segundo. O dicho de otra manera es capaz de

realizar una instrucción cada 62.5 nanosegundos.

El dsPIC cuenta con 3 Timers y se llaman: Timer 1, Timer2, Timer 3. En esta práctica se

utiliza el Timer 1. El timer 1 es de 16 bit, eso significa que puede contar desde 0 a (2^16)-1. Cada

cuenta tarda un Tcy, por lo tanto, contar de 0 a (2^16)-1 tarda 0.001,023 segundos.

Page 73: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

73

Una de las funciones del timer es que el microcontrolador espere un cierto tiempo

(retardo o tiempo muerto) antes de realizar alguna acción. Para poder crear retardos más largos se

usa un “prescaler”, que es un divisor de frecuencia.

Ejemplo A1.1 Calcular un retardo de 120 milisegundos

Fcy = 16, 000, 000

Con un prescaler de 256

Fcy/256 = 65,500

Esto significa que el timer hace 62,500 cuentas en un segundo, usando un prescaler de 256

100 ms120

=62500

x

x =62500 ∗ 120

1000= 7500

Esto significa que el timer realiza 7500 cuentas en 120 milisegundos.

Algoritmo: generar una onda cuadrada que dure 120 milisegundos entregando un uno lógico y

120 milisegundos estregando un cero lógico.

Page 74: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

74

Programa:

1. /*programa3.c*/

2. #include <p30f4013.h>

3. //*********************** Bits de configuracion ***************** 4. _FOSC(CSW_FSCM_OFF & XT_PLL16); // XT con 16xPLL 5. _FWDT(WDT_OFF); // Desabilita el watch-Dog 6. _FBORPOR(PBOR_ON & BORV_20 & PWRT_16 & MCLR_DIS); // Reset si viltage <2.0 Volts 7. // espera 16ms al energizarse y 8. // reset habilitado 9. _FGS(CODE_PROT_OFF); // proteccion de codigo DESHABILITADA 10. #define fcy 16000000

11. //**********************************************************

12. void retardo120ms(void); // prototipo de la funcion 13. int main(void); // Prototipo funcion main 14. 15. //******************** programa principal **********************

16. int main(void) 17. TRISD=0x0000; 18. while(1) 19. LATDbits.LATD3=1; 20. retardo120ms(); 21. LATDbits.LATD3=0; 22. retardo120ms(); 23. 24.

25. //********************** Configura retardo **********************

26. void retardo120ms(void)

27. /*Asegurarse que el timer 1 este en estado de reset*/ 28. T1CON=0; 29. TMR1=0; 30. IPC0bits.T1IP=1;

31. /* set timer 1 period register*/ 32. PR1=0x1D4C; 33. IFS0bits.T1IF=0; // clear the timer interrupt status flags 34. IEC0bits.T1IE=0; // Disable timer1 interrupts 35. T1CON=0x8030; // configura T1CON=1000000000110000 36. while(IFS0bits.T1IF==0); 37.

Page 75: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

75

Explicación del programa

El programa se basa en la función llamada retardo120ms la cual genera el retardo, es

utilizada en la función principal dentro de un ciclo while lo cual hace que se genere la onda

cuadrada. Es importante mencionar que el Timer es un modulo que trabaja en paralelo al CPU. En

este ejemplo el CPU se queda esperando a que la bandera T1IF cambie su estado de cero a uno

para salir del ciclo while. En otras palabras la condición del ciclo va a ser verdadera mientras el

timer no termine de contar, al final de la cuenta la bandera T1IF cambia de cero a uno y la

condición del ciclo se vuelve falsa, el ciclo termina y se regresa de la función al programa principal.

A1.9 Práctica 4, el UART

El UART es un dispositivo ampliamente utilizado para la comunicación serial asíncrona. En

esta práctica se interconectan dos dsPIC 30f4013 a través del modulo UART [17]. Ver Capítulo 16.0

de las hojas de datos del dsPIC.

Construir dos circuitos como el que se muestra en la Figura A1.6 cada uno en distinto

“Protoboard”, los LED’s se conectan en cada dsPIC a los puertos RB1 Y RB2, el push-button se

conecta a RF0. El Tx de un microcontrolador se conecta al Rx del otro microcontrolador, en ambos

chips se utiliza el UART 1.

El algoritmo:

• Cuando en un microcontrolador se presione el push-button, se envía un “1” a

través del UART 1, y si no está presionado el push-button se envía un “2”.

• Cuando un microcontrolador reciba un byte, si este byte es un “1” prende el LED

en RB1 y apaga el LED en RB2.

• Cuando un microcontrolador reciba un byte, si este byte es un “2” apaga el LED en

RB1 y prende el LED en RB2.

Page 76: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

76

Figura A1.6 Conexiones para usar el UART

Page 77: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

77

La configuración del UART

El microcontrolador posee dos UARTS, en esta práctica solo se utiliza el UART 1.

Velocidad de transmisión/recepción (Baudrate)

El UART tiene un generador “Baud rate” que es programado con el registro U1BRG, el

U1BRG es un registro de 16 bits, en este registro se coloca un numero que es calculado en base a

la velocidad de transmisión/recepción deseada y se hace con la siguiente fórmula:

𝐵𝐵𝑠𝑠𝑜𝑜𝑑𝑑 𝑟𝑟𝑠𝑠𝑜𝑜𝑟𝑟 =𝐹𝐹𝑑𝑑𝑦𝑦

(16 ∗ 𝐵𝐵𝑅𝑅𝐵𝐵 + 1)

Ó

𝑈𝑈1𝐵𝐵𝑅𝑅𝐵𝐵 = 𝐹𝐹𝑑𝑑𝑦𝑦16 ∗ 𝐵𝐵𝑠𝑠𝑜𝑜𝑑𝑑 𝑟𝑟𝑠𝑠𝑜𝑜𝑟𝑟

− 1

Un estándar en velocidad es el Baud rate = 9600, teniendo el Fcy = 16MHz

𝑈𝑈1𝐵𝐵𝑅𝑅𝐵𝐵 =16𝑀𝑀ℎ𝑧𝑧

16 ∗ 9600 − 1 = 104.166− 1 = 103.166

como no se pueden poner decimales entonces U1BRG = 103. Esto genera un error, el error

obtenido es:

𝐸𝐸𝑟𝑟𝑟𝑟𝑜𝑜𝑟𝑟 =(𝐵𝐵𝑠𝑠𝑜𝑜𝑑𝑑 𝑟𝑟𝑠𝑠𝑜𝑜𝑟𝑟 𝑑𝑑𝑠𝑠𝑙𝑙𝑑𝑑𝑜𝑜𝑙𝑙𝑠𝑠𝑑𝑑𝑜𝑜− 𝐵𝐵𝑠𝑠𝑜𝑜𝑑𝑑 𝑟𝑟𝑠𝑠𝑜𝑜𝑟𝑟 𝑑𝑑𝑟𝑟𝜇𝜇𝑟𝑟𝑠𝑠𝑑𝑑𝑜𝑜)

𝐵𝐵𝑠𝑠𝑜𝑜𝑑𝑑 𝑟𝑟𝑠𝑠𝑜𝑜𝑟𝑟 𝑑𝑑𝑟𝑟𝜇𝜇𝑟𝑟𝑠𝑠𝑑𝑑𝑜𝑜

Calcularemos el Baud rate obtenido

𝐵𝐵𝑠𝑠𝑜𝑜𝑑𝑑 𝑟𝑟𝑠𝑠𝑜𝑜𝑟𝑟 =16𝑀𝑀ℎ𝑧𝑧

(16 ∗ (103 + 1))= 9615.38

𝐸𝐸𝑟𝑟𝑟𝑟𝑜𝑜𝑟𝑟 =9615.38− 9600

9600= 0.160256%

Page 78: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

78

Otra manera de calcular el número a poner en U1BRG es usando las tablas que se

encuentran en las hojas de datos del dsPIC, de las cuales se ha extraído un segmento y se puede

ver en la Tabla A1.7

Tabla A1.7 UART Baud rates

En las tablas completas se puede ver que con algunos Fcy se puede lograr cero error, pero

a cambio se reducen los MIPS. En aplicaciones en que es importante tener velocidades de

transmisión exactas, y no es critico la velocidad de procesamiento se puede usar un Fcy para cero

error en Baud rate.

Entonces U1BRG = 103; // Baud rate & 16 Mhz Fcy

Otro registro de configuración para el modulo UART es el U1MODE y tiene que ver con el

modo de transmisión, el tipo de transmisión es 8 bits no paridad y un bit de parada y se le conoce

como N-8-1.

El bit 15 del registro U1MODE habilita el UART, eso significa que los otros dispositivos que

comparten las mismas patitas quedan deshabilitados.

Los bits 1 al 2 configuran el tamaño en bits del “byte” y la paridad, como el byte lo

necesitamos de 8 bits y sin paridad, a estos bits le asignamos un cero. Por último necesitamos un

bit de alto, que se define en el bit cero del U1MODE.

Page 79: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

79

El U1MODE queda de la siguiente manera:

U1MODE = 0x8000; // se habilita el UART N-8-1

Otra manera de configurarlo es bit a bit, de la siguiente manera:

U1MODEbits.UARTEN = 1; // se habilita el UART

U1MODEbits.PDSEL = 0; // 8 bit sin paridad

U1MODEbits.SETSEL= 0; // 1 bit de stop

Hasta el momento solo está configurado y habilitado el UART, pero es necesario que si

tiene datos se ponga a transmitir.

El UART empieza a transmitir cuando se le asigna un “1” a UTXEN (bit 10) del registro

U1STA

U1STAbits.UTXEN = 1; // se habilita la transmisión

Con esto termina la configuración.

Page 80: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

80

Programa:

1. /* primera practica con el uart del dspic30f4013*/

2. #include <p30f4013.h>

3. //****************** Bits de configuracion ***************** 4. _FOSC(CSW_FSCM_OFF & XT_PLL16); // XT con 16xPLL 5. _FWDT(WDT_OFF); // Desabilita el watch-Dog 6. _FBORPOR(PBOR_ON & BORV_20 & PWRT_16 & MCLR_DIS); // Reset si voltage <2.0 Volts 7. // espera 16ms al energizarse y 8. // reset habilitado 9. _FGS(CODE_PROT_OFF); // proteccion de codigo DESHABILITADA

10. #define fcy 16000000

11. int configura_UART1(); 12. int main (void); 13. int main (void)

14. char c1; 15. ADPCFG = 0xFFFF; 16. TRISB=0X0000; // todas salidas 17. TRISF=0XFFFF; // todas entradas

18. configura_UART1();

19. while (1) 20. if(U1STAbits.URXDA==1) // ¿hay datos en el buffer de Rx? 21. c1=U1RXREG; // si es verdad lee el dato 22. if (c1==1) // si es un 1 23. LATBbits.LATB1=1; // prende RB1 24. LATBbits.LATB2=0; // apaga RB2 25. 26. if (c1==2) // si es un 2 27. LATBbits.LATB1=0; // apaga RB1 28. LATBbits.LATB2=1; // prende RB2 29. 30. 31. if (PORTFbits.RF0==0) // si el PB esta presionado 32. if(U1STAbits.UTXBF==0) // si el buffer de Tx no esta lleno 33. U1TXREG=1; // pone un 1 en el buffer de Tx 34. if (PORTFbits.RF0==1) // si el PB es 1 35. if(U1STAbits.UTXBF==0) // si hay espacio en el buffer de Tx 36. U1TXREG=2; // pone un 2 en el buffer de Tx 37. 38.

39. int configura_UART1()

40. U1BRG = 103; // Baud rate 9600 & 16Mhz Fcy 41. U1STA = 0; // limpiar registro de control y status 42. U1MODE = 0x8000; // se habilita el UART N-8-1 43. U1STAbits.UTXEN = 1; // se habilita la transmision 44. return 0; 45.

Page 81: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

81

A1.10 Práctica 5, Uso del convertidor analógico digital

El 30F4013 tiene un DAC de 12 bits, este convertidor está orientado a precisión más que a

velocidad.

En la conversión analógica-digital, el convertidor distingue dos tiempos. El tiempo de

muestreo que es el tiempo que dura el convertidor conectado a la señal, y el tiempo de

conversión, que es el tiempo que le toma al convertidor transformar la señal muestreada a digital.

Existe una buena cantidad de formas de hacer la conversión. En este ejemplo el proceso es

totalmente manual:

• Muestreo de una sola entrada analógica

• Inicio del muestreo manual

• Duración del muestreo manual

• Inicio de la conversión manual

• La referencia positiva y negativa se toma de la alimentación

Primero definimos como va iniciar el muestreo y tenemos dos opciones, cuando ponemos el

bit SAMP = 1 o que el muestreo inicie inmediatamente después de que la conversión finaliza. Esta

configuración se define con el bit ASAM del registro de configuración ADCON1.

Bit 2 ASAM: bit de muestreo automático de A/D

1 = El muestreo comienza inmediatamente después de que la ultima conversión se ha

Completado. El bit SAMP automáticamente se pone a uno.

0 = El muestreo comienza hasta que el programa ponga el bit SAMP a uno.

Definiremos al bit SAMP como control de inicio del muestreo.

ADCON1bits.ASM = 0; // el muestreo inicia cuando el bit SAMP == 1.

Ahora definimos de qué manera finaliza el muestreo e inicia la conversión.

El registro ADCON1, contiene un conjunto de bits, que se llaman SSRC, estos bits se usan para

configurar la fuente del inicio de la conversión. En seguida tenemos las opciones de estos bits.

Page 82: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

82

Bit 7-5 SSRC<2:0>: bits de selección de fuente de inicio de la conversión.

111 = contador interno termina muestreo y comienza la conversión (auto conversión)

110 = reservado

101 = reservado

100 = reservado

011 = intervalo PWM para control de motores termina el muestreo y comienza la

Conversión.

010 = comparación del timer 3 termina el muestreo y comienza la conversión

001 = transición activa en el pin INT0 termina el muestreo y comienza la conversión

000 = limpiando el bit SAMP termina el muestreo y comienza la conversión

Elegimos el bit SAMP como fuente de disparo de fin de periodo de muestreo e inicio de

periodo de conversión.

ADCON1bits.SSRC = 0; // cuando el bit SAMP == 0 termina muestreo e inicia conversión

Se tienen 2 conjuntos de entradas, MUXA Y MUXB, para esta práctica se utiliza el MUXA y

se configura usando el registro ADCHS.

Bit 4 CH0NA: determina la entrada negativa del canal 0 en el MUXA.

1 = Entrada negativa del canal 0 es AN1

0 = Entrada negativa del canal 0 es VREF-

Establecemos como entrada negativa a VREF- en el MUXA

ADCHS1bits.CHONA = 0; // la entrada negativa del canal es VREF-

En seguida determinamos la entrada positiva del MUXA

Bit 3-0 CH0NA<3:0>: determina la entrada positiva del canal 0 en el MUXA

1111 = Entrada positiva del canal 0 es AN15

1110 = Entrada positiva del canal 0 es AN14

. . . .

0001 = Entrada positiva del canal 0 es AN1

0000 = Entrada positiva del canal 0 es AN0

Page 83: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

83

Establecemos como entrada positiva la patita RB8/AN8

ADCHSbits.CH0SA = 8; // entrada positiva del canal 0 e AN8

Se pueden seleccionar un conjunto de 16 entradas a muestrear de manera secuencial

(scanning), para ello se utiliza el registro ADCSSL. En esta práctica no se utiliza el scan entonces se

pone este registro en cero. Además de determinar cero entradas secuenciales, también

deshabilitamos el muestreo secuencial.

Ahora se elegirán cuales son los voltajes de referencia positiva y negativa

Bit 15-13vVCFG<2:0>: bits de configuración del voltaje de referencia

Se ponen como referencia positiva AVDD y como referencia negativa AVSS, que son las

alimentaciones del modulo ADC.

ADCON2bits.VCFG = 0; // referencia positiva AVDD y negativa AVSS

Los resultados de la conversión se guardan en el registro ADCBUF, que tiene 16 palabras

(16 bits). Las palabras se llaman ADCBUF0, ADCBUF1… ADCBUF15. Este registro para algunas

aplicaciones muy particulares se puede dividir en dos registros de 8 palabras. En esta aplicación se

utiliza el registro sin división.

ADCON2bits.BUFM = 0; //configurado buffer de 16 palabras

El ADC genera una interrupción cada n conversiones. Para especificar n, se utiliza un

conjunto de bits SMPI en ADCON2. Cuando se necesita que el resultado se guarde en la primera

Page 84: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

84

palabra (ADCBUF0), luego la segunda conversión en ADCBUF1 hasta ADCBUF(n-1). Para ir llenando

cada palabra se debe generar una interrupción cada n conversiones.

Establecemos que se genere una interrupción después de cada conversión, de esta

manera el resultado se guardara solo en ADCBUF0.

ADCON2bits.SMPI = 0; // después de una conversión se genera una interrupción

Como se tienen dos conjuntos de entradas, el MUXA y MUXB, se puede elegir que se

tomen muestras en A y luego en B, esto se hace con el bit ALTS.

Solo se está utilizando el MUXA, es necesario deshabilitar el muestreo alternante.

ADCON2bits.ALTS = 0; // se muestrea MUXA

Con esto se termina de configurar el registro ADCON1. Se puede observar que para

muestreo manual solamente se usa una entrada analógica, además todo ADCON1 es cero,

entonces si lo ponemos a cero no es necesario configurar cada conjunto de bits.

El ADC usa un reloj que puede ser derivado del reloj del sistema o del reloj interno del

chip, para elegirlo se usa el bit ADRC localizado en el registro de configuración ADCON3.

Se configura para que el ADC utilice el reloj derivado del sistema.

ADCON3bits.ADRC = 0; // reloj del ADC derivado del sistema

El periodo del reloj Tad del ADC, tiene un mínimo, Tad = 667 nanosegundos, al definir el

Tad debemos tener mucho cuidado de cumplir con el limite.

La manera correcta de calcular el Tad mínimo permitido es con la siguiente ecuación:

𝐴𝐴𝐷𝐷𝐶𝐶𝐴𝐴 = 2 ∗𝑇𝑇𝑠𝑠𝑑𝑑𝑇𝑇𝑑𝑑𝑦𝑦

− 1

Page 85: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

85

Ejemplo:

Tad = 667ns

Tcy = 33.33ns

ADCS= (2*(667/33.33))-1 = 39

Por lo tanto en ADCS se pone un 39

Ejemplo 2:

Tad = 667ns

Tcy = 62.5 (Fosc = 64Mhz)

ADCS = (2*(667/62.5))-1 = 20.34, redondeando queda en 21

Este Tad calculado es el mínimo que cumple con la especificación.

ADCON3bits.ADCS = 21; // Tad mínimo

El Registro ADCON3 contiene el conjunto de bits SAMC, usados para especificar el tiempo

que dura el muestreo para la automatización de este proceso, pero en esta práctica es manual por

lo tanto no se utilizan.

Page 86: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

86

Construcción del circuito:

Figura A1.8 Circuito convertidor analógico-digital

Page 87: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

87

En la Figura A1.8 se muestra el diagrama para el circuito convertidor análogo-digital, se

puede observar que es prácticamente el sistema mínimo de siempre solo cambian las conexiones

de los LED’s, la parte del circuito que dice “MODULO A/D” se conecta al circuito de la Figura A1.9

que corresponde a un convertidor digital-analógico, esto nos permite regresar la señal analógica

muestreada por el pic a su forma original, de esta manera podemos observar el funcionamiento

del mismo.

Para mayor información sobre el DAC0800 ver el Capítulo 2 de esta tesis, para probar el

funcionamiento del convertidor A/D se puede muestrear una señal de la forma que sea,

proveniente de un generador de funciones con una amplitud de 5V pico-pico positivos o bien con

un potenciómetro lineal hacer variar un voltaje de entre 0-5V. Utilizando un osciloscopio observar

la señal original y la señal reconstruida por el convertidor D/A la cual debe ser idéntica, se puede

ajustar el voltaje de referencia del convertidor D/A para igualar la señal reconstruida.

El programa:

En este programa se utilizan 3 funciones: una para generar un retardo en milisegundos,

otra para generar un retardo en microsegundos, y la tercera para configurar el modulo A/D. la

configuración es como se explico anteriormente, en cada conversión se genera una interrupción, y

en cada vez se está leyendo el buffer de resultados (ADCBUF0) el cual está conformado de la

siguiente forma.

MSB LSB

Los bits d00-d04 se mandan al puerto D, los bits d05-d11 se mandan al puerto F. Esto se

hace utilizando operaciones de corrimiento.

Page 88: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

88

Figura A1.9. Convertidor digital-analógico 12 bits

Page 89: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

89

Programa:

1. #include <p30f4013.h> 2. #include <math.h> 3. #include <stdio.h> 4. #include <string.h>

5. //************************** Bits de configuracion ************************** 6. _FOSC(CSW_FSCM_OFF & XT_PLL16); // XT con 16xPLL 7. _FWDT(WDT_OFF); // Desabilita el watch-Dog 8. _FBORPOR(PBOR_ON & BORV_20 & PWRT_16 & MCLR_DIS); // Reset si viltage <2.0 Volts 9. // espera 16ms al energizarse y 10. // reset habilitado 11. _FGS(CODE_PROT_OFF); // proteccion de codigo DESHABILITADA

12. //********** *************PROTOTIPO DE FUNCIONES ***********************

13. #define fcy 16000000

14. int main (void); 15. void retardo_ms(unsigned int ms); 16. void retardo_us(unsigned int us); 17. void adc_ini(void);

18. //*********************** PROGRAMA PRINCIPAL **************************

19. int main (void) 20. unsigned int ADCValue=0,v0,v1,v2,v3,v4,v5; 21. unsigned int c=0x0FE0; 22. unsigned int d=0x000F; 23. unsigned int e=0x0010;

24. TRISD=0x0000; // pueto D como salida 25. TRISF=0x0000; // pueto F como salida 26. TRISB=0x0102; // RB8 entrada 27. ADPCFG=0xFEFD; // entrada analogica RB8 28. retardo_ms(2000); 29. LATB=0x0004; // prende led RB2 30. retardo_ms(2000); 31. LATB=0x000C; // prende led RB3 32. retardo_ms(2000); 33. retardo_ms(2000); 34. LATB=0x0004; // apaga led RB3 35. retardo_ms(2000); 36. LATB=0x000C; // prende led RB3

37. LATF=0x0064; // Inicializa DAC en 3231 Vo = 3.8 V Y 38. LATD=0x001F; // entrada al tent map Vin = 0.760 milivolts

39. retardo_ms(2000); // retardos de inicalizacion ADC 40. retardo_ms(2000);

41. adc_ini(); 42. ADCON1bits.ADON=1; // Prende ADC

Page 90: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

90

43. while(1) 44. ADCON1bits.SAMP = 1; // start sampling ... 45. retardo_us(1); 46. LATB=0x001C; // enciende led RB4 47. ADCON1bits.SAMP = 0; // start Converting 48. retardo_us(1000); 49. retardo_ms(10); 50. while (!ADCON1bits.DONE); // conversion done? 51. ADCValue = ADCBUF0; // yes then get ADC value 52. v0=ADCValue; 53. v1=v0&c; // deja pasar los ultimos 54. // 7 bits mas significativos 55. v2=v1>>5; 56. LATF=v2; // envia los 7 bits MSB puerto F 57. v3=v0&d; // deja pasar primeros 58. // 5 bits menos significativos 59. LATD=v3; // envia al puerto D 5 bits LSB 60. v4=v0&e; 61. v5=v4>>4; 62. LATDbits.LATD8=v5; 63. // repeat 64. 65. // ******************** Configura el modulo A/D *********************** 66. void adc_ini(void) 67. TRISB=0x0102; // RB8 entrada 68. ADPCFG=0xFEFD; // entrada analogica RB8 69. //ADCON1=0x0000; 70. ADCON1bits.ASAM=0; // El muestreo inicia de forma manual 71. // al usar el bit SAMP 72. ADCON1bits.SSRC=0; // contador interno finaliza muestreo 73. // y comienza la conversion 74. //ADCHS=0X0008;

75. ADCHSbits.CH0NA=0; // Entrada negativa del canl 0 es VREF- 76. ADCHSbits.CH0SA=8; // Entrada POSITIVA del canl 0 es RB8/AN8 77. //ADCSSL=0 78. ADCSSL=0; // No hay entradas para muetreo secuencial

Page 91: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

91

79. //ADCON2= 80. ADCON2bits.VCFG=0; // Referencia positiva=AVDD; referencia negativa=AVSS. 81. ADCON2bits.CSCNA=0; // Muestreo secuencial scan deshabilitado 82. ADCON2bits.SMPI=0; // Despues de una conversion se genera una interrupcion 83. ADCON2bits.BUFM=0; // *Configurado como bufer de 16 palabras* 84. ADCON2bits.ALTS=0; // Solo se muetra el MUXA. 85. //ADCON3= 86. ADCON3bits.ADRC=0; // El reloj del ADC es derivado del reloj del sistema 87. ADCON3bits.ADCS=21; // Tad=(21+1)*0.5 Tad=11 tcy=687.5 88. 89. // *************** Configura retardo en milisegundos **********************

90. void retardo_ms(unsigned int ms) 91. unsigned int periodo=0;

92. /* ensure timer 1 is in rest state */

93. T1CON=0; 94. TMR1=0; 95. IPC0bits.T1IP=1; 96. periodo=((fcy/256)*ms)/1000; 97. PR1=periodo; // Set Timer 1 period register 98. IFS0bits.T1IF=0; // Clear the timer 1 interrupt status flag 99. IEC0bits.T1IE=0; // Disable Timer 1 interrupts 100. T1CON=0x8030; // Configura T1CON=1000000000110000 101. while(IFS0bits.T1IF==0); 102. 103. // ******* ******* Configura retardo en microsegundos ****************** 104. void retardo_us(unsigned int us) 105. unsigned int periodo=0; 106. 107. /* ensure timer 1 is in rest state */ 108. 109. T1CON=0; 110. TMR1=0; 111. IPC0bits.T1IP=1; 112. periodo=(fcy*us)/1000000; 113. PR1=periodo; // Set Timer 1 period register 114. IFS0bits.T1IF=0; // Clear the timer 1 interrupt status flag 115. IEC0bits.T1IE=0; // Disable Timer 1 interrupts 116. T1CON=0x8000; // Configura T1CON=1000000000110000 117. while(IFS0bits.T1IF==0); 118.

Page 92: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

92

El buffer de resultados nos proporciona la información en 16 bits de los cuales los últimos

4 se leen como “0” lógico pero como no los necesitamos no es necesario tomarlos en cuenta.

En el capítulo 4 se exponen los resultados de esta práctica, se utiliza este programa en la

tesis para generar el TENT MAP, en esta práctica la inicialización (semilla) del DAC no tiene

importancia, la semilla tomo relevancia solo en circuito cerrado, de ahí surge la aplicación.

Se puede deshabilitar las líneas 51-58. De otra manera al correr el programa en el

osciloscopio se verá una señal DC de aproximadamente 3.8 V durante 10 segundos y después

veremos el resultado de la conversión en la salida de los convertidores DAC.

Page 93: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

93

BIBLIOGRAFÍA

[1] Joseph Emerson, Pseudo-Random Operators: Theory and Applications, Quantum Communication, Measurement and Computing, AIP., Vol. 7, pp. 139-142, 2004. [2] Mario Stipcevic, Fast nondeterministic random bit generator based on weakly correlated physical events, Rev. Sci. Instrum.,Vol. 75, pp.4442-4449, 2004. [3] R.M. May, Simple mathematical models with very complicated dynamics, Nature, vol. 261, pp. 459-467, 1976.

[4] S.N. Elaydi, Discrete Chaos, Chapman and Hall/CRC Press, 2000

[5] H. Tanaka, S. Sato and K. Nakajima, Integrated circuits of map chaos generators, Analog Integrated Circuits and Signal Processing, vol. 25, pp. 329-335, 2000. [6] M. Suneel, Electronic circuit realization of the logistic map, Sadhana, vol. 31, pp. 69-78, 2006. [7] J.N. Blakely, M.B.Eskridge and N.J. Corron, A simple Lorenz circuit and its radio frequency implementation, Chaso, vol. 17, pp. 023112, 2007. [8] Hojas de datos para el amplificador operacional LM324. http://www.datasheetcatalog.org/datasheets/150/61350_DS.pdf [9] Hojas de datos para el microcontrolador dsPIC 30F4013. http://ww1.microchip.com/downloads/en/DeviceDoc/70138F.pdf [10] Hojas de datos para el IC DAC0800. http://www.datasheetcatalog.org/datasheet/nationalsemiconductor/DS005686.PDF [11] S.J. Orfanidis, Optimum signal processing, 2nd Edition, Sophocles J. Orfanidis, 2007. [12] M.E. Yalcin, J.A.K. Suykens, and J. Vandewalle, Experimental confirmation of 3- and 5-scroll attractors from a generalized Chua’s circuit, IEEE Trans. Circuits Syst. I: Fundam. Theory Appl., vol. 47, pp. 425-432, 2000. [13] Section 18. 12-bit A/D Converter. http://ww1.microchip.com/downloads/en/DeviceDoc/70065D.pdf

Page 94: CONTENIDOgalia.fc.uaslp.mx/~icampos/tesis/000 TESIS Leo uaslp.pdfunidimensional. El mapeo casa de campaña es una de las funciones de iteración más simples, ya sea solo o en compañía

94

[14] Hojas de datos para el amplificador operacional OP07CN. http://www.datasheetcatalog.org/datasheet/stmicroelectronics/2184.pdf [15] Dirección de internet para descargar el programa MPLAB. http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002 [16] Dirección de internet para descargar el compilador C MPLABC30. http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en023073 [17] Section 19. UART. http://ww1.microchip.com/downloads/en/DeviceDoc/Section%2019.%2070066c.pdf [18] http://www.encuentrosmultidisciplinares.org/Revistan%C2%BA7/Seminario%20Teor%C3%ADa%20del%20Caos%201.pdf