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
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.