giovedì 21 luglio 2016

Generatore DDS per bassa frequenza


La dotazione di un piccolo laboratorio elettronico comprende anche i generatori di segnale. E quello che avevo io, un generatore di segnali sinusoidali a bassa frequenza, tratto da un ormai vecchio numero di Nuova Elettronica, dopo trent'anni di onorato servizio, decise di lasciare questo mondo, proprio nel bel mezzo di una riparazione di un amplificatore audio....

Da qui la decisione di passare a qualcosa di più moderno, ed allo stesso tempo di divertirmi con l'autocostruzione.

L'idea mi è venuta sfogliando le pagine di un noto sito cinese di elettronica, dove ho notato un interessante kit da montare: un generatore di funzioni a bassa frequenza a DDS.

Ma che cos'è il DDS? La parola sta per Direct Digital Syntesis, ovvero Sintesi Diretta Digitale.

Come funziona il DDS

E' principalmente composto da un oscillatore fisso molto stabile in frequenza, da un microelaboratore, da una memoria e da un convertitore digitale-analogico (DAc).


Direct Digital Syntetizer

L'oscillatore fisso è la base dei tempi per il microelaboratore, determina il clock di sistema  e quindi un conteggio preciso. E' costituito da un oscillatore quarzato.

Il microelaboratore esegue vari compiti: il primo è quello di scrivere in un registro (l'accumulatore di fase) un numero crescente x, a partire da 1 in su, corrispondente alla fase del segnale; il secondo è quello di scrivere in una memoria il valore digitale, punto per punto, della forma d'onda da generare.

Ora, se ad x=1 corrisponde il primo livello del segnale, ad x=2 il secondo e così via, ed andiamo ad inviare al DAc il contenuto delle relative locazioni di memoria, riusciamo ad ottenere la forma d'onda voluta.

Giocando con i valori di x e con il contenuto della memoria, possiamo generare qualsiasi segnale a qualsiasi frequenza, limitata comunque da quella dell'oscillatore (un suo sottomultiplo).

Il circuito

Il microelaboratore è un microcontrollore Atmel ATMEGA16A, con un clock da 16 MHz. L'interfaccia verso l'operatore è costituita da un display a matrice 16x2, standard Hitachi HD44780, e da un tastierino a 6 tasti.
La conversione avviene tramite un semplice convertitore ad 8 bit passivo a scala, detto R/2R, utilizzante otto uscite GPIO digitali del processore.

Ci sono due uscite per il segnale, una proveniente dalla conversione (DDS) ed una direttamente dal processore (HS). Dalla prima si ottengono sinusoidi, onde quadre, triangolari, a dente di sega diritto ed invertito, rumore ed un segnale definito come ECG (...?); con frequenza selezionabile da 1 a 65535 Hz.

La seconda uscita, chiamata High Speed, restituisce un segnale programmabile a 1, 2 4 ed 8 MHz ad onde quadre.

Il livello e l'offset sono impostabili con due potenziometri, con un valore massimo del segnale di circa 9V picco.

Qui potete scaricare il manuale completo di istruzioni e schema elettrico.

L'alimentazione

Il circuito vuole, per funzionare, una tripla alimentazione a +5V, +12V e -12V. Non essendo compreso l'alimentatore nel kit, me lo sono inventato, con quello che avevo a disposizione.

L'alimentazione del vecchio generatore era da 9V, e basta...

Ottenuta tra l'altro con un trasformatore da 12V al secondario. Pochi, se si vuole usare un comodo sistema a ponte di diodi.

Ho quindi preferito usare un semplice sistema a singolo diodo e condensatore, più lo stabilizzatore, per ogni uscita.

C'è un pò di ripple sul condensatore di filtro, da 2200 microFarad, poco peraltro con i consumi ridotti di questo circuito. Ripple ulteriormente ridotto dagli stabilizzatori di tensione, un 7805, un 7812 ed un 7912.

Tensione di ingresso al filtro 16,5V, tensione di uscita dagli stabilizzatori +(-)12V, caduta 4,5V, appena oltre il limite sopportabile dall'integrato per una corretta stabilizzazione. I +5V non hanno dato problemi di sorta, dato che sono prelevati pure loro a monte.

Schema elettrico alimentatore


La prova

Tutto sommato non è male come circuito, anche per il costo, poco più di 12 euro. Ha una buona linearità, non è difficile da usare, si monta facilmente anche se non viene fornito con il piano di montaggio.

Ha un problema, però. Il buffer di uscita è un LM358, un doppio operazionale general purposes un pò datato. Non è particolarmente veloce ed ha scarse caratteristiche come offset ed amplificazione.

Ho sostituito questo operazionale con un TL082, le performance sono migliorate di molto.

Sarebbero da aggiungere anche dei condensatori da una decina di nanofarad in parallelo ai pulsanti, ogni tanto generano alcuni rimbalzi.

Nella foto, l'uscita ad 1 kHz visualizzata con un altro kit, un economico oscilloscopio sempre acquistato presso questo sito.


73 de Andrea IV3ONZ


Link utili:

Wikipedia, Direct Digital Syntesis: https://it.wikipedia.org/wiki/Direct_Digital_Synthesis
Analog Devices: Fundamentals of Direct Digital Synthesis (DDS)
Texas Instruments TL082: http://www.ti.com.cn/general/cn/docs/lit/getliterature.tsp?genericPartNumber=tl082-n&fileType=pdf

1 commento:

  1. Ciao Andrea, solo per dirti che ti ho inviato un msg nel BBS.
    Complimenti per il lavoro svolto.
    Cordiali 73 de Luigi i3xty

    RispondiElimina