TODOPIC

Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: antoniof en 21 de Junio de 2005, 05:48:00

Título: DDS AD9851
Publicado por: antoniof 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!!
Título: RE: DDS AD9851
Publicado por: Nocturno 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.
Título: RE: DDS AD9851
Publicado por: cucaracha 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!!!
Título: RE: DDS AD9851
Publicado por: antoniof 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.
Título: RE: DDS AD9851
Publicado por: antoniof 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
Título: RE: DDS AD9851
Publicado por: lord_10 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
Título: RE: DDS AD9851
Publicado por: Nocturno 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.
Título: RE: DDS AD9851
Publicado por: Nocturno 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
Título: RE: DDS AD9851
Publicado por: antoniof 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.
Título: RE: DDS AD9851
Publicado por: Nocturno en 29 de Junio de 2005, 23:58:00
Bien, dudas resueltas. Ahora manos a la obra.

Gracias
Título: RE: DDS AD9851
Publicado por: esdrufao 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
Título: RE: DDS AD9851
Publicado por: ep2000 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
Título: RE: DDS AD9851
Publicado por: ep2000 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
Título: RE: DDS AD9851
Publicado por: Nocturno 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
Título: RE: DDS AD9851
Publicado por: ep2000 en 29 de Julio de 2005, 13:32:00
Muchas risasahh ya revisé tu página probaré tu métodoMuchas risas
Título: RE: DDS AD9851
Publicado por: Nocturno en 19 de Agosto de 2005, 02:19:00
Por fin he encontrado tiempo para hacer la plaquita del DDS AD9851 y estoy haciendo pruebas con ella.
La he probado con REFCLOCK de 8, 12, 16, 20 y hasta 32MHz (ya sé que el límite son 30) y siempre en modo de 6xREFCLOCK, pero a pesar de eso, no logro resultados satisfactorios a partir de 2xREFCLOCK.  Bien es cierto que hasta 2xREFCLOCK la frecuencia que consigo es exacta y muy estable, pero no sube de ahí.
La única diferencia que tiene mi circuito con el que posteaste antes, Antonio, es que el condensata que va a masa en mi caso es de 560pF y el tuyo de 470pF, pero no creo que eso influya en el problema que tengo.
¿Te suena qué puede pasar?
Título: RE: DDS AD9851
Publicado por: Nocturno en 23 de Agosto de 2005, 04:54:00
Tampoco consigo resultados buenos a bajas frecuencias, por debajo de 1MHz.
En fin, voy a probar a montar el filtro de 7º orden que viene en la data a ver si se resuelve esto. Lo que no entiendo es que a ti te funcione bien sin ese filtro Llorando
Título: RE: DDS AD9851
Publicado por: antoniof en 23 de Agosto de 2005, 05:30:00
Como estas comprobando las señales de salida? en un osciloscopio? La única prueba que he podido hacer con el mio es "escuchar" el tono de salida y compararlo con un teclado musical que tengo por aqui y comprobar que las frecuencias son las mismas.

Pero a partir de los 5 KHZ es dificil escuchar nada, por lo que sin osciloscopio no te puedo decir que sale del mio.

A frecuencias bajas he cronometrado la onda cuadrada de salida a 1HZ y funciona correctamente (60 pulsos por minuto.)
Título: RE: DDS AD9851
Publicado por: Nocturno en 23 de Agosto de 2005, 06:06:00
Lo mido con un frecuencímetro.
¿Quieres decirme que ves entonces estable las frecuencias bajas?

Joe, macho, pues no sé. Ya seguiré probando a ver si doy con la tecla (no con la del piano, como túGiño.
Título: RE: DDS AD9851
Publicado por: antoniof en 05 de Septiembre de 2005, 03:56:00
Bueno Manolo.

Yo dejaré el mío aparcado hasta que pueda ver la forma de onda de salida con el osciloscopio.

Desde luego cuando algo se tuerce y no hay manera es mejor buscar soluciones alternativas.

A ver si tienes mejor suerte con el econoscillator.
Título: RE: DDS AD9851
Publicado por: Maria_A en 22 de Febrero de 2006, 20:49:00
hola, como estas... necesito saber con que programa abro los archivos .brd que tu pusiste los PCB y tambien necesito que me expliques un poquito mas como manejabas el AD9851 con el  pic16f876. porque yo necesito reproducir la senoidal para un audiometro pero quiero saber si lo manejaste de forma paralelo o serial, que conectabas al pic y como era el clock. bueno en verdad no me e leido bien el pdf y tampoco lo entendi mucho ayudame por favor.LloricaEnfurruñado
Título: Re: DDS AD9851
Publicado por: wyly en 18 de Mayo de 2006, 20:18:44
Hola
Alguien me puede decir donde comprar este c.i. en España llebo un rato mirando y solo he encontrado una tienda al precio de 32 € mientras que en USA lo e visto por menos de 10$
Saben si envian muestras gratuitas?
Tienen una pagina web magnifica
saludos
Título: Re: DDS AD9851
Publicado por: Nocturno en 19 de Mayo de 2006, 02:05:46
Puedes intentar comprárselo diréctamente al fabricante, que los vende por $13,40, aunque también envía samples:
http://www.analog.com/en/prod/0%2C2877%2CAD9851%2C00.html
Título: Re: DDS AD9851
Publicado por: wyly en 19 de Mayo de 2006, 10:23:00
Gracias por la respuesta  intentare ver si me venden algunos  porque al precio q estan compro 3 alli al mismo precio que 1 aqui.Los gastos de envio supongo que no sean mucho no?,
Si melo envian por carta no tendre ningn problema que me lo paren verdad?
Y lo de las muestras sabes cuantas te sirven porq yo e pinchao asi por probar y no e visto q ponga el limite de productos si vi q pone de unidades de un mismo c.i
saludos

Título: Re: DDS AD9851
Publicado por: Nocturno en 19 de Mayo de 2006, 12:15:18
No sé si alguna vez han parado muestras o no, pero siempre me han llegado. Los portes los paga Analog.
No me acuerdo cuántas muestras como máximo, me parece que eran 3 de cada integrado.
Título: Re: DDS AD9851
Publicado por: wyly en 21 de Mayo de 2006, 19:55:38
Gracias
ya pedi  las muestras  en una semana +- se suponen  q estaran
saludos