Reynerio de Jesus Hernandez Zayas
Reynerio de Jesus Hernandez Zayas
Reynerio de Jesus Hernandez Zayas
Mis padres, mis hermanos, mis tías, mi abuela y a mi novia, por haberme
brindado su ayuda y apoyo durante todos estos años.
Mis tutores, quienes han aportado tiempo, conocimiento y han sabido
guiarme en el desarrollo de este trabajo.
A todos mis compañeros de estudio durante estos años y en especial a
Deinier Cruz por mantenernos unidos durante todo el tiempo de carrera,
y a Marilis Giménez por su ayuda durante toda la carrera.
INTRODUCCION
Página 1
Generador de Funciones
Síntesis de frecuencia.
Oscilador controlado por voltaje.
Osciladores RC.
Osciladores LC.
Osciladores a cristal.
Estos y otros métodos son empleado según la necesidad.
En la actualidad la síntesis de frecuencia son los que más se utilizan en las
aplicaciones más complejas, su uso es cada vez mayor. La síntesis de
frecuencia es ahora tan natural, que todos los diseños de radio la utilizan ya
que sólo sintetizan señal para la generación y control. Otras razones incluyen el
aumento de la complejidad de la modulación, el espectacular incremento en
uso y el aumento de la comodidad. No marcación y más ajuste de precisión;
basta con pulsar el botón, y el canal está bloqueado con una precisión que no
requiere corrección.
Página 2
Generador de Funciones
Página 3
Generador de Funciones
Tareas de la investigación:
Página 4
Generador de Funciones
- Diseñar el instrumento.
-Análisis de documentos.
-Métodos de análisis y síntesis.
-Simulación.
-Criterio de expertos.
Página 5
Generador de Funciones
Página 6
Generador de Funciones
Tanto la técnica PLL como la SDD, tienen sus ventajas y desventajas que
deben ser consideradas para un propósito particular de manera cuidadosa, sin
embargo existe un problema que no resulta fácil de resolver con el empleo del
PLL y es el aumento de la resolución. Este y otros problemas quedan resueltos
de forma muy simple haciendo uso de la SDD. El cual tiene la ventaja de que
si el oscilador base es muy estable, también lo serán las distintas frecuencias
de salida.
Página 7
Generador de Funciones
Página 8
Generador de Funciones
f
f0 fS (1.1)
2W
fS
f (1.2)
2W
Dónde:
fs : Frecuencia de muestreo
Página 9
Generador de Funciones
Dónde:
Página
10
Generador de Funciones
FRECUENCIA
f2
CONMUTACION
f1 DDS
SOBREPASO f2
CONMUTACION
PLL
f1
TIEMPO
CONMUTACION
TIEMPO
Página
11
Generador de Funciones
Existen cuatro características fundamentales de los DAC que hay que tener en
cuenta:
Resolución.
Exactitud.
Velocidad.
Pureza espectral.
La resolución indica cuantos niveles analógicos discretos existirán sobre el
rango de salida. En teoría mientras más bits se tomen se pueden tener
mayores resoluciones, pero en la práctica las fuentes de ruido la limitan.
Página
12
Generador de Funciones
Tiempo de
establecimiento
Para obtener una adecuada pureza espectral deben tenerse en cuenta tres
aspectos esenciales:
Dónde:
V2, V3, V4, V5: son las amplitudes RMS de armónicos individuales.
Página
13
Generador de Funciones
Dónde:
Los componentes del filtro requieren de una elección cuidadosa según la banda
de frecuencia en que se va a trabajar, debido a que los inductores y
capacitores al trabajar a frecuencias superiores a 10 MHz no se comportan
como tal. Se pueden utilizar filtros a cristal como es el caso del SE36-9M-5010
que es un filtro antialiasing que opera en el rango de 10 k
Página
14
Generador de Funciones
filtro puede atenuar los espurios a la frecuencia de corte del mismo, pero en
frecuencias alejadas a esta, no realiza un gran efecto debido a que se opera en
la banda de paso del filtro.
Página
15
Generador de Funciones
Para elegir un detector u otro hay que tener en cuenta, principalmente, dos
factores: el tipo de señal de entrada y el intervalo de error de fase de entrada
en el cual la salida es lineal. Dependiendo del tipo de señal de entrada que se
va a aplicar al PLL se usa un tipo de detector de fase u otro ya que, por
ejemplo, una entrada cosenoidal y una entrada digital requieren detectores de
fase diferentes. Por otra parte, según sea el intervalo de error de fase de la
entrada en el cual la salida es lineal, también se utiliza un detector de fase u
otro. Cuanto más amplio sea dicho intervalo más útil va a ser el detector de
fase para controlar el lazo, y además el ruido va a afectar menos. Los
detectores de fase de tipo multiplicador y los digitales son los que más se
utilizan. Los primeros son útiles cuando la señal de entrada es de tipo
cosenoidal y los segundos, son usados para señales de entrada de tipo digital.
Página
16
Generador de Funciones
Cuando no hay señal aplicada a la entrada del sistema o hay una señal de
Estado fijo.
una diferencia de fase finita d .Cuando un lazo está enganchado por cada ciclo
de la señal de entrada, hay uno y solo un ciclo de la señal de salida. Si el
comparador de fase no excede su rango lineal se asegura el cumplimiento de
esta condición.
Cuando se aplica una señal a la entrada del sistema, el detector de fase
compara la fase y la frecuencia de dicha señal con la frecuencia del VCO y
Página
17
Generador de Funciones
banda del filtro paso bajo y anularse al mismo tiempo con la componente de
frecuencia suma. Si este es el caso, no se transmite ninguna información al
VCO y este permanece en su frecuencia libre inicial.
Cuando la frecuencia de entrada se aproxima a la del VCO, la componente
diferencia de frecuencias disminuye y se acerca el borde de la banda del filtro
paso bajo. Ahora, alguna componente de la diferencia de frecuencias pasará,
haciendo que la frecuencia del VCO se acerque a la frecuencia de la señal de
entrada. Esto producirá, a la vez que disminuya la frecuencia de la componente
diferencial, el paso de más información a través del filtro paso bajo hacia el
VCO.
Esto es esencialmente un mecanismo de realimentación positiva que provoca
que el VCO sincronice con la señal de entrada. Teniendo en cuenta lo dicho, se
puede definir nuevamente el término “gama de captura” como „la gama de
frecuencia alrededor de la cual, la frecuencia libre inicial del VCO puede
enganchar con la señal de entrada‟. La gama de captura es una medida de qué
frecuencias de señal de entrada se debe tener para sincronizar al VCO. Esta
“gama de captura” puede llegar a tener cualquier valor dentro de la gama de
enganche y depende en primer lugar, del flanco del ancho de banda del filtro
paso bajo, y en segundo lugar de la ganancia del lazo-cerrado del sistema.
Página
18
Generador de Funciones
ff
: Frecuencia de corrida libre.
2 fc
: Rango de captura.
2fp
: Rango de tracción.
2 f L : Rango de seguimiento.
Página
19
Generador de Funciones
2f
Siempre se cumple que 2 f c < p < 2 f L .
Las características del filtro, entre otras cosas, limitan la rapidez en que el
estado fijo puede ser alcanzado, ya que la tensión del condensador del filtro
paso bajo no puede cambiar instantáneamente, asegurando una rápida
recaptura de la señal, si el sistema sale de sincronismo por un transitorio de
ruido.
El proceso de adquisición del estado fijo, es complicado, no lineal, y de difícil
análisis, por lo cual acá solo se analizará el PLL ya en estado fijo.
Una vez que el proceso de corrección (o adquisición del sincronismo en el lazo,
o fijación del lazo) se ha completado, el PLL va a seguir automáticamente las
variaciones de la señal de entrada.
Si esta señal es más bien estable, con poco ruido y disturbios, el lazo necesita
muy poca información para reproducirla fielmente. El uso del PLL reduce
tremendamente el contenido de ruido de la señal de entrada.
El lazo funciona como un filtro de frecuencia variable y de pequeño ancho de
banda, que puede seguir automáticamente una señal de referencia, aun
cuando esta posea una relación señal / ruido muy pobre [6].
Página
20
Generador de Funciones
Página
21
Generador de Funciones
Sinusoidal.
Cuadrada.
Triangular.
CI ICL8038
CI ICL8038
Método de la SDD.
Página
22
Generador de Funciones
Los microcontroladores, junto a las memorias y los dispositivos lógicos, son los
constituyentes básicos para el diseño de los generadores de funciones.
Seguidamente se profundiza en los microcontroladores PIC que constituyen
uno de los máximos exponentes de su desarrollo y el principal soporte físico de
este trabajo.
Los PIC tienen algo que fascina a los diseñadores, puede ser la velocidad de
trabajo, el precio, la facilidad de uso, la información, las herramientas de apoyo,
entre otros.
Se pude constatar que para las aplicaciones más habituales (casi un 90%) la
elección de una versión adecuada de PIC es la mejor solución. Ya estos
proporcionan facilidades como son:
1.5.1 Arquitectura.
Los microcontroladores son familias de circuitos integrados producidos por la
empresa Microchip Tecnology Inc., de alta escala de integración que
incorporan la mayor parte de los elementos que configuran un controlador.
Página
23
Generador de Funciones
Está basada en un banco de registros lo que significa que todos los objetos del
sistema (puertas de E/S, temporizadores, posiciones de memoria y otros.)
están implementados físicamente como registros. [8][9][15]
1.5.2 Segmentación.
Se aplica la técnica de segmentación en la ejecución de las instrucciones. La
segmentación permite al procesador realizar al mismo tiempo la ejecución de
una instrucción y la búsqueda del código de la siguiente. De esta forma se
puede ejecutar cada instrucción en un ciclo (un ciclo de instrucción equivale a
cuatro ciclos de reloj).
Página
24
Generador de Funciones
Página
25
Generador de Funciones
Página
26
Generador de Funciones
2.2.1 Metodología seguida para los cálculos del diseño del DDFS.
Página
27
Generador de Funciones
2.1
fC
f0 M
2W
2.2
Dónde:
Se puede obtener W luego de trabajar con la ecuación 2.2 para M=1 y obtener
la ecuación2.3, teniendo en cuenta que f0 debe ser el valor mínimo deseado: [2]
f
W log 2 C
f0 2.3
La pureza espectral del SDD está dada por el ruido de cuantificación y los
espurios generados, producto del truncamiento de fase. [4]
Página
28
Generador de Funciones
SQNR 1.76
B 6.68 7 bit 2.4
6.02
WCSM
P 9.97 10 bit 2.5
6.02
Página
29
Generador de Funciones
A1 A2 A8
V0 10V ....
2 4 256 2.6
Cuando todos los bit de entrada al conversor sean cero, entonces de la salida
V0= 0.
Cuando todos los bit de entrada sean uno, la salida V0= 9.96 V. (máximo voltaje
de salida unipolar).
Página
30
Generador de Funciones
Debido que para el diseño de un filtro de orden dos en adelante toma una alta
complejidad, es recomendable usar filtros de primero y segundo órdenes como
bloques básicos para construir filtros de mayor orden. Por tanto se diseña un
filtro de primer orden y luego otro de segundo orden.
Se desea que el filtro atenué las frecuencias que se encuentran por encima de
la frecuencia de corte (f0), que en este diseño es de 1MHz. Fijando un valor de
C1 = 10pf, de la ecuación 2.7 se obtiene el de R1:
1
f 2.7
2RC
1
R 2.8
2fC
Rf
K 1 2.9
Ri
Página
31
Generador de Funciones
La frecuencia de corte f0= 1MHz y el factor de calidad (Q= 0.5) para lograr una
respuesta máximamente plana. Para simplificar los cálculos de diseño, R2=R3
=R y C2=C3=C, con C=10pF de la ecuación 2.8, R=15915,5.
1
K 3
Q 2.10
Página
32
Generador de Funciones
Para lograr el filtro de 5to orden, se ponen tres etapas en cascadas, una de
primer orden seguido por dos de segundo orden, con una razón de -100dB/dec
como se muestra en la figura 2.7.
Página
33
Generador de Funciones
Página
34
Generador de Funciones
Modulador
Demodulador
Página
35
Generador de Funciones
Sintetizador de frecuencia
Como se puede apreciar en la figura 2.12, para usar el PLL como multiplicador,
solo es necesario el cálculo del capacitor externo (C 0) ajuste de frecuencia de
corrida libre y el calculo del factor de multiplicación de frecuencia N, [13].
Vcc = 5V
1 2.11
C0
2200 * f 0
Página
36
Generador de Funciones
Donde:
f N * ft 2. 12
Donde:
ft : Frecuencia de entrada.
f : Frecuencia de salida.
Cuando se trabaja con señales por encima de 1MHz hay que tener cuidado con
la interferencia, por lo tanto se deben realizar las siguientes acciones con
respecto al modulo del PLL.
Página
37
Generador de Funciones
Página
38
Generador de Funciones
Página
39
Generador de Funciones
Características
Ancho de banda, 0.5 a 500 MHz.
Bajo ruido, 4.5 dB typ.
Encapsulado metálico, herméticamente sellado.
DC 12.5 V max.
Salida 50 Ω.
Página
40
Generador de Funciones
Página
41
Generador de Funciones
El programa inicia con la configuración de los pines de entrada salida para las
señales digitales, además se inicializan los valores de las variables globales, se
configura el oscilador a 4MHz. Luego el programa prosigue con la
configuración de los puertos como entrada o salida, puerto A como entrada,
puerto B, C, D como salida. Una vez configurados los mismos se activa la
interrupción externa INT0 por flanco de subida, mediante los registros INTCON
y INTCON2, para atender el teclado, terminada esta etapa, el programa
arranca visualizando en el LCD un cartel de inicio y luego otro informativo,
espera a que se produzca una interrupción externa propiciada por el usuario,
mediante el teclado y así continuará dando notas informativas y el usuario
interactuando con el teclado, hasta quedar configurados los parámetros de la
onda a generar. Una vez terminada la configuración de la onda, se mandan
palabras de control a través de el puerto D de forma multiplexada a cada uno
de los bloques, la selección de los bloques se realiza a través del puerto C. Se
comienza a generar la onda y el programa se queda preguntando por el botón
de finalizar. Cuando se finaliza se muestra en el display las instrucciones a
seguir para salir, iniciar una nueva configuración de onda y repetir la onda ya
configurada. (Anexo 3). Ver el diagrama de flujo en la figura 2.19.
Página
42
Generador de Funciones
Página
43
Generador de Funciones
Se utilizan los CI LM7805, LM7812, LM7905 y LM7912. Ver figura 2.20. [3]
Los filtros de línea son dispositivos que permiten eliminar el ruido eléctrico
generado por otros equipos, ellos constan en su construcción de bobinas,
condensadores y en algunos casos varistores, como se aprecia en la figura
2.22.
Página
44
Generador de Funciones
Página
45
Generador de Funciones
Conclusiones generales.
Página
46
Generador de Funciones
Recomendaciones.
Página
47
Generador de Funciones
Bibliografía
[6]. Skidmore, R., Evans, J. M., Jenkins. A data collection system for gathering
electrical impedance measurements por human breast, Cline. Phys. Physiol.
Mean 8 (Suppl. A), 99-102, 87.
[7]. Qualcomm, Synthesizer Product Data Book, San Diego, EEUU, Qualcomm.
agosto 1997, p1-3
[8]. PIC 18XX2 Microcontroller Data Book. Microchip Technology Inc. 2002.
[14]. www.Analog.com
[15]. www.datasheetsite.com/datasheet/PIC18F452
Página
48
Generador de Funciones
[16]. www.minicircuits.com
[17]. www.trassydarcia.blogspot.com/2008/12/el-dds-direct-digital-synthesis
[18]. www.ztecinstruments.com/waveform-generator-fundamentals
Página
49
Generador de Funciones
Anexos
Página
50
Anexo 1: Diagrama en bloques del PIC18F452.
Anexo 2: Esquema eléctrico del SDD.
Anexo 3: Código de la programación del PIC.
#include "math.h"
#include "xlcd.h"
/****************************************************************************
************************
/****************************************************************************
************************
* DECLARACIÓN DE VARIABLES
*
*****************************************************************************
***********************/
int PASO = 0;
int BOTON = 0;
int ONDA = 0;
int AMPL = 5;
int CANT_CAR = 0;
int CANT_CARA = 0;
/****************************************************************************
************************
*****************************************************************************
***********************/
* FUNCIÓN: Inicio
*
INTCON = 0X52;
INTCON2 = 0X65;
return;
/****************************************************************************
************************
* PROGRAMA PRINCIPAL
*
*****************************************************************************
************************/
void main(void)
rep:
Inicio();
Mostrar_1();
Demora_4s();
Mostrar_2();
rep1:
Mostrar_3();
rep2:
Mostrar_4();
rep3:
Mostrar_5();
rep4:
Mostrar_6();
rep5:
Mostrar_7();
Mostrar_8();
PORTBRB1bits=0;
return;
}
/****************************************************************************
************************
* FUNCIÓN: Interrupcion
*
*****************************************************************************
************************
BOTON=PORTA;
PASO=PASO+1;
ONDA=BOTON;
FREC=0;
CANT_CAR=CANT_CAR+1;
FREC=FREC*10;
FREC=FREC+BOTON;
Prin_car();
PASO=PASO-1;
if (PASO==3 & BOTON>9 & BOTON<F){ // controlar que el boton apretado sea f.
PASO=PASO-1;
}
AMPL=0;
AMPL=AMPL+BOTON;
Prin_car();
CANT_CARA=1;
AMPL=AMPL*10;
AMPL=AMPL+BOTON;
Prin_car();
PASO=PASO-1;
Generar();
PASO=PASO-1;
Finalizar();
PASO=PASO-1;
}
if (PASO==8){
switch (BOTON){
PASO=0;}
}}
PASO=PASO-1;
INT0IFbits=0;
break;
/****************************************************************************
************************
* FUNCIÓN: Mostrar_1
*
*****************************************************************************
************************
***********************************************************************
**********************
* Parámetros: void
*
* *
*****************************************************************************
***************/
/****************************************************************************
************************
* FUNCIÓN: Mostrar_2
*
*****************************************************************************
************************
/****************************************************************************
************************
* FUNCIÓN: Mostrar_3
*
*****************************************************************************
************************
/****************************************************************************
************************
* FUNCIÓN: Mostrar_4
*
*****************************************************************************
************************
/****************************************************************************
************************
* FUNCIÓN: Mostrar_5
*
*****************************************************************************
************************
/****************************************************************************
************************
* FUNCIÓN: Mostrar_6
*
*****************************************************************************
************************
/****************************************************************************
************************
* FUNCIÓN: Mostrar_7
*
*****************************************************************************
************************
/****************************************************************************
************************
* FUNCIÓN: Mostrar_8
*
*****************************************************************************
************************
/****************************************************************************
************************
*****************************************************************************
************************/
Inicializa_LCD();