Home Page

VFO con DDS AD9951

(Vedere anche TRINUS nuova realizzazione con USB)

Il DDS cosa è e come funziona
Nelle nostre riunioni in sezione il mercoledì sera per prima cosa abbiamo cercato di chiarirci le idee su come funziona un apparecchio radio, poi però abbiamo sentito l'esigenza di passare alla pratica decidendo di costruire un ricevitore.
Abbiamo discusso su come impostarlo ma una questione è venuta fuori subito: come realizzare il VFO. Per un ricevitore monobanda si può pensare di costruire un oscillatore con un circuito LC ben curato cercando di ottenere una buona stabilità, anche se  questo obbiettivo non sembra tanto semplice da raggiungere. Se poi si pensa a un multigamma le difficoltà appaiono insormontabili.
 A questo punto qualcuno ha proposto: perchè non costruiamo un DDS? Inizialmente la cosa ci è sembrata improponibile! Oltre a tutte le difficoltà tecniche e concettuali, gli integrati per DDS hanno delle dimensioni microscopiche con il passo tra i piedini che arriva a 0.5 mm...  chi riesce a saldarli!! Però l'idea è stimolante e cominciamo a studiare se possiamo realizzarla.
 Abbiamo visto, su internet, che I0CG Giuliano ha realizzato un oscillatore a DDS utilizzando il nuovo integrato AD9951 a 14 bit e assicura che il segnale ha una purezza eccezionalmente buona. Ci siamo messi in contatto con lui e da buon OM ci ha fornito i circuiti stampati da lui realizzati. Ciò ha risolto una buona parte dei problemi.
Abbiamo poi chiesto qualche integrato AD9951 alla Analog Device e dobbiamo dire che  ce li ha inviati con estrema  sollecitudine. Il timore della saldatura infine è stato superato con l'aiuto di Mario I0UEY il quale ci ha assicurato che alla saldatura avrebbe pensato lui. Abbiamo cercato quindi gli altri piccoli componenti smd necessari, sia  nei negozi locali sia rivolgendoci a R.F.Elettronica di Franco Rota.
 Per tutti questi approvvigionamenti ha dispiegato le sue doti manageriali Piero IK0SPX riuscendo a trovare tutto ciò di cui avevamo bisogno.
Abbiamo naturalmente seguito lo schema di Giuliano utilizzando il suo circuito stampato. Il primo esemplare ce lo ha saldato Mario ma poi, imparata la lezione, anche Armando I0XOF è riuscito a saldarli rivelando una mano eccezionalmente precisa.

Per far lavorare un DDS è necessario inviargli dei comandi secondo il suo linguaggio e ciò è possibile solo mediante un dispositivo un po'  intelligente come un PIC o un Computer. Noi, per cominciare, abbiamo scelto di usare il Computer e di interfacciarci al DDS mediante la porta parallela. Questo approccio ci è sembrato il più semplice e quello che offriva le maggiori possibilità di  sperimentazione.
Dalla lettura del data sheet la gestione del DDS è apparsa estremamente difficile da comprendere e realizzare,  ma cercando in rete abbiamo trovato il programma di DL5MGD in VB completo di file sorgente e ciò ci è stato di enorme aiuto.
Quando siamo passati alle prove finali sono arrivate le tribolazioni. Non funzionava proprio nulla. Ogni sperimentatore sa che quando si realizza qualcosa è difficile sperare che tutto funzioni al primo colpo. Bisogna andare a fare indagini nei diversi punti, vedere se tutto va come dovrebbe andare e scoprire dove il diavolo ha messo la coda, lavoro non facile e che porta spesso ad abbandonare anche gli apparecchi realizzati con scatole di montaggio.
 Nel nostro caso tutto era più difficile poiché l'integrato fa tutto al suo interno e non c'é quasi nulla che si possa osservare all'esterno. Inoltre non si sapeva se era l'ardware a non funzionare o il software. Neppure il quarzo oscillava!!!  Però le tensioni dei pin facenti capo al quarzo sembravano essere buone. Dopo tante prove inutili (anche la sostituzione del quarzo) si è pensato che potesse essere cattivo uno dei  due condensatori da 39pF ai lati del quarzo. Dissaldati e misurati erano infatti da 390pF! Non abbiamo capito perché sui condensatori smd non scrivono i valori come per le resistenze! Avevamo comprato una bustina con 10 condensatori e sopra c'era scritto chiaramente 39 pF. Dopo la sostituzione il quarzo ha iniziato ad oscillare allegramente.
Però il segnale desiderato ancora non usciva. Avevamo messo delle resistenze di protezione sulle linee della porta parallela, le abbiamo eliminate e qualche cosa a tratti cominciava ad apparire all'uscita, abbiamo  messo anche dei buffer sulle linee, come suggeriva l'autore del programma,  ma senza miglioramenti decisivi. Alla fine abbiamo esaminato criticamente il listato del programma ed effettuato qualche cambiamento nella routine che gestisce l'uscita dei dati sulla porta parallela dopo di che il DDS ha iniziato ha funzionare perfettamente.
La soddisfazione del risultato chiaramente ha ripagato tutte le fatiche sostenute. Abbiamo costruito altri quattro esemplari (uno per ciascun partecipante) senza eccessiva difficoltà. Dopo il primo gli eventuali problemi erano molto più semplici da risolvere in quanto eravamo sicuri del software e il difetto ardware   era facile da individuare. Le induttanze del filtro hanno dato qualche problema di saldatura. L'integrato, invece, è risultato  essere robustissimo ed ha sempre resistito a tutte le sevizie. Ha resistito perfino a una saldatura effettuata sui suoi piedini con la tensione inserita!
A questo punto possiamo affermare che se qualche altro collega della sezione si vorrà cimentare nella costruzione noi potremo aiutarlo garantendo il risultato almeno al 90%.
Il software, adesso,  lo abbiamo completamente riscritto cercando di renderlo  il più chiaro possibile, in modo che possa essere utile a chi voglia iniziare a comandare in modo semplice un dds , come a noi è stato utile quello di DL5. Il programma è stato fatto girare sia su un AMD 220MHz con Windows98, sia su un portatile 2800Mhz con XP, sia su altri computer senza problema alcuno. Abbiamo utilizzato il collegamento diretto tra la porta parallela e il dds senza nessun danno né per l'integrato né per il computer. Il pericolo per il computer non crediamo che sia maggiore di quello del collegamento con la stampante, almeno se si fanno i collegamenti ben fatti. Se poi si manda sulle linee la tensione di rete o la radiofrequenza del trasmettitore, allora crediamo che il computer corra seri rischi. Nella figura sono state inerite delle resistenze da 1Kohm che però non sarebbero di nessun aiuto nei casi estremi. Ad ogni modo ognuno può studiare qualcosa di più elaborato per quando riguarda la protezione.
Sono necessarie 3 linee per dare istruzioni al DDS: Data, su cui passano gli zeri e gli uno che trasportano l'informazione, Clock, che serve a sincronizzare questi dati (sono acquisiti sull'impulso di salita del clock) e Update (Una qualsiasi istruzione, precedentemente inviata,  viene eseguita solo quando arriva questo impulso). Si vedrà  poi come far uscire dalla porta parallela i segnali che servono,  utilizzando il VISUAL BASIC.

La linea del Reset non è indispensabile, ma è utile, poiché, se per qualche motivo qualche bit arrivasse errato, il DDS facilmente non risponderebbe più agli ordini e bisognerebbe solo spegnerlo. Con un impulso positivo su tale linea si può riportare nelle condizioni iniziali.

Tutte e quattro queste linee sono linee di Output per il computer e non ci serve qui nessuna linea di input. Le linee di input verranno usate negli altri progetti.

PORTA PARALLELA

PC Pin N°

I/O

Funzione

Indirizzo

Posizione

1

O

 

037A

-bit 0

2

O

Data DDS

0378

bit 0

3

O

Clock DDS

0378

bit 1

4

O

Update DDS

0378

bit 2

5

O

Clock ADC PwMeter Ant

0378

bit 3

6

O

CS ADC PwMeter Ant

0378

bit 4

7

O

 

0378

bit 5

8

O

 

0378

bit 6

9

O

Reset DDS

0378

bit 7

10

I

Data PowerMeter

0379

bit 6

11

I

 

0379

-bit 7

12

I

DATA AntAnal

0379

bit 5

13

I

DATA AntAnal

0379

bit 4

14

O

 

037A

-bit 1

15

I

 

0379

bit 3

16

O

 

037A

bit 2

17

O

 

037A

-bit 3

18¸ 25

  GROUND    

Sul circuito stampato di Giuliano c'è un connettore con 8 piedini a cui fanno capo i quattro terminali di cui sopra più altri che non ci interessano. Il reset è anche collegato con un condensatore al positivo dell'alimentazione, per avere un reset alla partenza, ma nella nostra applicazione conviene eliminarlo.

La frequenza prodotta dal DDS ha la precisione del quarzo utilizzato e la cosa interessante è che non bisogna cercare un quarzo con una particolare frequenza, ma può essere utilizzato praticamente qualsiasi quarzo. Usando un quarzo tra 20 Mhz  e 30 Mhz è disponibile un moltiplicatore interno per portare la frequenza sui 400 Mhz. In alernativa si può usare un oscillatore esterno attorno ai 400Mhz. Non utilizzando il moltiplicatore interno il rumore di fase del segnale prodotto dal DDS migliora sensibilmente raggiungendo valori molto buoni.

I0CG propone un oscillatore a 500 Mhz ottenuto selezionando la 5a armonica di un oscillatore  da 100 Mhz, dai suoi oscillogrammi appare una riduzione elevata delle frequeze spurie. Noi l'abbiamo provato e abbiamo costatato un miglioramento del rumore di fase tra 25 e 30 db. Questo lo abbiamo verificato utilizzando il metodo esposto da I4SBX sul n. 11/ 2006 di Radiorivista. Il metodo esposto è molto semplice e da risultati attendibili senza utilizzare strumenti sofisticati.

Comunque anche con un semplice quarzo si ottengono risultati molto buoni, per cui conviene iniziare a sperimentare con un quarzo e il moltiplicatore interno. Nel programma c'è una finestra che permette di impostare la frequenza del quarzo usato e il moltiplicatore, penserà il programma, poi, a fare i calcoli necessari e a mettere i valori giusti nei registri del DDS.

Per l'utilizzo dell'oscillatore interno o dell'oscillatore esterno c'è anche una piccola variante hardware.  Poiché ci si può trovare in difficoltà nel consultare lo schema di Giuliano, illustriamo, con delle figure, qualche particolare dove abbiamo dovuto maggiormente riflettere.

All'uscita il DDS presenta due uscite IOUT e -IOUT. Nello schema proposto c'è un trasformatore con presa centrale che  le utilizza entrambe. Poiché è difficile procurarselo ed è abbastanza costoso, inizialmente se ne può fare a meno utilizzando una sola uscita,  come è visibile in figura.

Vedere per tutti i particolari la pagina di I0CG AD9951 DDS PAGE e soprattutto la pagina con gli schemi

Consultare il Data sheet dell' AD9951

Mettiamo a disposizione il software da noi realizzato convinti che possa essere utile a qualcuno come punto di partenza per realizzazioni ancora migliori. Avvertiamo però che  noi non possiamo offrire nessuna garanzia di perfetto  funzionamento. Esso è realizzato in Visual Basic ed è completo dei  file  Sorgenti.     

Download Software Gruppo Sperimentatori Frosinone   Il programma gestisce il VFO  ed anche gli altri due progetti, ma le tre parti sono praticamente indipendenti e possono essere usate ciascuna per conto proprio.

...segue!