Autor Tema: DDS AD9851  (Leído 9433 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
DDS AD9851
« en: 21 de Junio de 2005, 05:48:00 »
Buenas.

Abro este tema para comentar mi experiencia con este circuito a peticion de  Nocturno.

Se trata de un generador de señal controlable digitalmente. Aqui teneis el enlace de analog:

http://www.analog.com/en/prod/0%2C2877%2CAD9851%2C00.html

Genera una señal senoidal de hasta 180MHz y su correspondiente cuadrada. Sin embargo, para evitar las frecuencias imágenes, el fabricante aconseja no pasar de más de la mitad de la frecuencia máxima, es decir, 90MHz, o bien filtrar muy bien la frecuencia que queramos.

Para seleccionar la frecuencia que queramos se utiliza la fórmula siguiente:

fout=valor_cargado(32 bits)*system_clock/2^32

El valor que se carga es de 32 bits, por lo que suponiendo un reloj de 20MHz, podemos sintetizar una señal de hasta 10MHz con una precisión de 0,0047 Hz. Por lo tanto, la gran ventaja de ser controlado digitalmente es su enorme precisión.

Yo he controlado este circuito con un PIC16F876. He utilizado para el PIC un cuarzo de 20MHz y he utilizado la salida del PIC OCS2/CLKOUT para llevarla directamente al DDS.
El único problema que he tenido con este circuito es que a la hora de actualizar una nueva frecuencia, tengo que resetearlo enviando un pulso por el PIN22. Por lo demás funciona a la perfección.

Aqui os paso unas fotos de mi generador. Al lado se puede ver la FPGA donde algún día espero poder programar el osciloscopio. Las fotos las he sacado con el móvil asi que no son muy buenas.











El teclado para introducir la frecuencia deseada lo he cogido de un móvil viejo. Todo está montado sobre la caja de un Video.
También podeis ver que no tube en cuenta que el PIC iva en la cara de componentes y he tenido que hacer la mega chapuza. Pero funciona!!

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: DDS AD9851
« Respuesta #1 en: 21 de Junio de 2005, 06:06:00 »
Ante todo te agradezco que hayas abierto el tema, Antonio.

Y en segundo lugar, me quito el sombrero, macho.

Me he pegado con un DDS AD9951 de Analog más de un mes hasta que conseguí hacerlo funcionar, pero ahí me quedé.

Mi intención era usarlo como generador de clock variable para el osciloscopio, pero en el momento que lo intentaba usar como driver de clock se volvía loco. Lo máximo que he conseguido es que el frecuencímetro lea la frecuencia que está generando el DDS, pero nada más.

¿Serías tan amable de pasarnos el esquema y programa de tu circuito?, me gustaría ver si hay algo que no tuve en cuenta para intentarlo de nuevo.

Por cierto, lo del video viejo y el teclado del móvil se merece un aplauso.

Desconectado cucaracha

  • PIC24H
  • ******
  • Mensajes: 1409
    • CUCAWEB
RE: DDS AD9851
« Respuesta #2 en: 21 de Junio de 2005, 07:04:00 »
Me uno al hilo, como no!!

Muy bueno tu generador!! Curioso, si señor. Viva el reciclaje!!!

Yo lo dejé antes que nocturno. Quemé uno y el otro no fuí capaz ni de comunicarme con él... No se si también se quemó o que leches pasó... (quizás me equivoqué haciendo la librería para el pcb, vete tú a saber...)
La cosa es que abandoné y me pasé a un econoscillator de maxim.
Con el de maxim, que funciona bien, el problema es que además de ser más lento (66mhz), el mínimo es de unos 4Khz, osea, que limita la base t/div por ese extremo (en mi caso, a 2ms/div).

Que opinas de llevarlo hasta 100MHz en lugar de a 90mhz?? Supongo que será cuestión de probar, si.. Pero dime que opinas, tú que lo tienes en marcha.
Que tal se comporta al límite que le tienes puesto, a 90mhz??

Y otra cosilla.. No recuerdo ahora el nivel de tensión que daba para la salida cuadrada.. En cualquier caso, supongo que es cuestión de añadirle un comparadora de estos rápidos para aumentarlo a los niveles del ADC y de la FIFO.

Bueno, no pregunto más.. que me he emocionao, jeje

Saludos!!!
Saludos desde Huelva (ESPAÑA)

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: DDS AD9851
« Respuesta #3 en: 21 de Junio de 2005, 07:28:00 »
Aqui tienes el enlace al almacén del foro:

http://miarroba.com/foros/ver.php?foroid=348538&temaid=3293616

La rutina que te interresa es la "up_dds", aunque por lo que he podido ver, tu DDS es totalmente diferente a este.

Si te fijas, en el PCB el reset del AD9851 esta conectado al reset del PIC. Esto en un principio no funcionó y tuve que modificar el PCB a mano y conectar el reset del DDS a la salida PORTA,2, que también utilizo para poner en blanco la pantalla VFD. Con esto ya funcinó bien.

Lo que comentas de que el DDS se vuelve loco, es lo que me pasaba cuando no reseteaba el mío antes de introducirle una nueva frecuencia. Hacía lo que le daba la gana. Por eso opté por resetearlo antes de cada actualización.

Si vas a utilizar tu DDS para modificar la frecuencia de muestreo del osciloscopio, ten en cuenta lo de las frecuencias imágenes. Lo mejor es que consigas un system clock de 400MHz y muestrees siempre por debajo de los 200MHz.

Bueno espero que te haya servido algo de ayuda.

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: DDS AD9851
« Respuesta #4 en: 21 de Junio de 2005, 07:46:00 »
Bueno cuca. En realidad he utilizado el DDS unicamente para hacerme un generador de funciones, ya que el reloj para el osciloscopio lo genera la propia placa de la FPGA. Además no necesito modificar este reloj, ya que con la FPGA puedo elegir qué muestras meto en la fifo y cuales no. Así siempre muestreo al máximo de frecuencia (80MHz) y descarto 1, 2, 4, 8, etc muestras para conseguir los 40, 20, 10, 5 MSPS y variar así el t/div.

El tema de llevar más allá de los 90MHz el DDS está claro en el datasheet. Aparecerán frecuencias imágenes. Un ejemplo:

Queremos una frecuencia de 120MHZ.
A la salida tendremos esta (120MHz), la de muestreo (180MHz), la imagen superior (180 + 120 = 300MHz) y la inferior (180 - 120 = 60MHz). Es esta última la que nos dará un gran dolor de cabeza, por que además su potencia espectral sera importante, por lo que puede que nuestro conversor esté trabajando a 60MSPS en vez de a 120MSPS que es lo que queremos. Una solución muy fácil es filtrar esta frecuencia de 60MHz con un filtro NOTCH  de esos pero no podremos muestrear nunca a 60MHz ni, dependiendo de la selectividad del filtro, en sus alrededores. Por eso lo mejor es conseguir un system clock máximo y muestrear como máximo a la mitad de éste.

En cuanto a los niveles de salida, son TTL(0~5V), ya que tiene integrado un comparador de alta velocidad, que compara una salida de referencia con la onda senoidal

Desconectado lord_10

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 612
    • My Blog
RE: DDS AD9851
« Respuesta #5 en: 21 de Junio de 2005, 08:42:00 »
Buen tema mi estimado antoniof...buen tema......y k buen proyecto jejejeje...ahora si viene lo mero mero...aprender sobre esos DDS........hay k ponerese a estudiar amas en el tema.....jejejejeje...Sonrisa GiganteSonrisa GiganteSonrisa Gigante



saludos y en hora buena antoniof.............ah se me olvidaba por aki me vas  atener pegadoa  este hilo....Muchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risasMuchas risas
..::  3D5F ™ ::..  AHC

"Tan sólo hace falta una pequeña idea, para hacer un gran sueño realidad."

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: DDS AD9851
« Respuesta #6 en: 21 de Junio de 2005, 09:28:00 »
Muchas gracias por los ficheros y las explicaciones, Antonio.
Ya he encargado unas unidades del AD9851 y voy a ver si descifro la PCB que has adjuntado.
Seguiré informando.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: DDS AD9851
« Respuesta #7 en: 29 de Junio de 2005, 12:22:00 »
Antonio, estoy intentando entender tu PCB y no soy capaz de llegar a entenderla por completo, porque hay algunos puentes que no están pintados.
¿Podrías contestarme a las siguientes dudas?:
- ¿Has usado las mismas GND y Vdd para la parte analógica y la parte digital?
- Las patillas VoutP y VinP salen al exterior. ¿Donde van conectadas?, ¿es VoutP la salida de clock que yo podría usar?
-  ¿Donde va conectado el pin PVCC?
- Podrías pintarme el esquema de la conexión entre IOUT, IOUTB, VINP, VINN. Es que me pierdo en esa parte de la placa.

Gracias, monstruo

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: DDS AD9851
« Respuesta #8 en: 29 de Junio de 2005, 18:35:00 »
Yo y mis placas de aqui te pillo aqui te mato Sonrisa GiganteSonrisa GiganteSonrisa GiganteSonrisa Gigante

Bueno ahy van las repsuestas:

1.- Si he utilizado las mismas GND para la parte analógica y digital. Las GND analógicas se unen a las digitales a través del PIC. Las VCC las he ruteado independientes, aunque en la fuente de alimentación se unen.

2.- El pin VOUTP es la salida del comparador. Se trata de una señal cuadrada de 5 V de amplitud, por lo que es la salida que debes llevar al conversor analógico-digital. El pin VINP es la entrada analógica al comparador y es la salida que tengo de la onda senoidal de 1Vpp.

3.- El pin PVCC(pin 6) va conectado al DVDD (pin 23) a través de un puente que se me olvidó pintar. Ambos pines tienen un taladro justo al lado para soldar el puente.

4.- El esquema es el mismo que viene en el datasheet pero sin el engorro del filtro de 7th orden elíptico:



Espero haberte aclarado algo.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: DDS AD9851
« Respuesta #9 en: 29 de Junio de 2005, 23:58:00 »
Bien, dudas resueltas. Ahora manos a la obra.

Gracias

Desconectado esdrufao

  • PIC16
  • ***
  • Mensajes: 101
    • team pirata dos locos del rc
RE: DDS AD9851
« Respuesta #10 en: 30 de Junio de 2005, 04:36:00 »
un saludo a tod@s,enhorabuena por el montaje,ya tengo pedidos unos dds,para un generador de frecuencia(en realidad es para ajustar bien los filtro de las etapas de rf),nunca me imagine ke la carcasa de un video y el teclado de un movil
sirviera para realizar un montaje como el tuyo.

sin mas un saludo y no pareis de sorprenderme,cada dia aprendo masSonrisa Gigante
las leyes son como las salchichas...es mejor no ver como se hacen.
las opiniones son como los culos......cada uno tiene el suyo
Lo importante no es saber, sino tener el teléfono del que sabe

Desconectado ep2000

  • PIC10
  • *
  • Mensajes: 6
RE: DDS AD9851
« Respuesta #11 en: 20 de Julio de 2005, 14:17:00 »
Giño Gracias por los consejos que dan acerca de utilizar los DDS, la verdad es que estoy montado un generador de señales hasta 12Mhz pero usando el menor de la familia. el AD9833, que no es tan complicado como los otros, y el código lo estoy haciendo en C, gracias al ccs. Tomaré en cuenta el reseteo a ver si ocurre con el ad9833. En lo que comience a hacer pruebas, remitiré los codigos aquí.Giño

Desconectado ep2000

  • PIC10
  • *
  • Mensajes: 6
RE: DDS AD9851
« Respuesta #12 en: 26 de Julio de 2005, 13:35:00 »

Hola a todos, estoy montando un generador de seòales para mi proyecto, y tengo la bakelita y tengo el AD9833, pero no poseo ningun equipo especializado en soldadura de montaje superficial, salvo una pistola de aire caliente.
Enfurruñadoalguien me podría indicar un metodo para soldar el chip en la bakelita?Enfurruñado
(la bakelita tiene maskara antisoldante pero no tiene las donas estaòadas).
Creo q esa es mi mayor dificultad hasta los momentos.
Que viva este foro, contribuye cada día al aprendizaje de cada uno de nosotros. Saludos.....Giño

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: DDS AD9851
« Respuesta #13 en: 27 de Julio de 2005, 00:49:00 »
Si te sirve de algo, tengo un artículo en mi web donde se habla de eso:
http://manolo.auna.com

Desconectado ep2000

  • PIC10
  • *
  • Mensajes: 6
RE: DDS AD9851
« Respuesta #14 en: 29 de Julio de 2005, 13:32:00 »
Muchas risasahh ya revisé tu página probaré tu métodoMuchas risas