|
La Radio "via software".
Da qualche tempo sono reperibili sul mercato numerosi ricevitori e ricetrasmettitori in cui gli ultimi stadi di IF (filtro, noise blanker, demodulatore, etc.) sono completamente digitali, ovvero realizzati con tecnologia "DSP" (Digital Signal Processing). Questa tecnologia (le cui idee risalgono per altro all'inizio del secolo scorso, ma che diventò realizzabile solo dall'avvento dei calcolatori elettronici) è basata su un'idea molto semplice, ma straordinariamente efficace.
Supponiamo infatti di prendere il nostro segnale analogico e, a intervalli periodici spaziati fra loro di un tempo Dt, di misurarne il valore istantaneo. Questi valori istantanei rappresentano il nostro segnale attraverso una sequenza di campioni {x(n) = x(t|t=nDt)}. Se il tempo di campionamento Dt è sufficientemente breve rispetto alla frequenza massima contenuta nello spettro del nostro segnale (la frequenza massima nello spettro del segnale non deve superare 1/(2Dt)), si può dimostrare che la sequenza {x(n)}fornisce una rappresentazione fedele del segnale "continuo" x(t). L'operazione di conversione è effettuata mediante un apposito circuito, detto convertitore analogico/digitale (ADC).
A questo punto, ora che il nostro segnale è stato "catturato" in una sequenza numerica, possiamo pensare di filtrarlo, trasformarlo, modificarlo semplicemente agendo sulla sequenza di numeri che lo rappresenta mediante un opportuno algoritmo di calcolo, che può essere realizzato sia mediante un microprocessore, sia mediante un gate array opportunamente programmato. Quando avremo finito di elaborarlo, non rimane che eseguire il processo inverso e trasformare la sequenza numerica in un segnale analogico mediante un convertitore digitale/analogico (DAC).
Ovviamente, se l'insieme delle elaborazioni da eseguire sul segnale è tale che possano essere realizzate in un tempo inferiore al tempo Dt che intercorre fra un campione e l'altro, tutto il processo può essere realizzato in tempo reale, e a questo punto il sistema ADC + calcolatore + DAC è in grado di sostituire alla perfezione un equivalente sistema analogico.
Il sistema digitale ha però qualche marcia in più, se lo guardiamo con attenzione!
Innanzitutto, osserviamo che mentre il sistema analogico è affetto da problemi legati alla tolleranza, la taratura e l'invecchiamento dei componenti analogici che lo costituiscono, ciò non succede per il sistema digitale (o più esattamente questi problemi rimangono circoscritti unicamente ai circuiti dell'ADC e del DAC).
Inoltre il sistema digitale può essere facilmente modificato semplicemente cambiando il programma che elabora la sequenza di ingresso: la soluzione analogica di sicuro non offre la stessa flessibilità circuitale!
Infine è possibile realizzare con il sistema digitale delle funzioni che non hanno un corrispondente analogico: si pensi per esempio ai filtri con risposta all'impulso finita, o a sistemi di elaborazione "lookahead" (che cioè prendono una decisione su come elaborare un campione in funzione dei valori futuri del campione elaborato!).
Ovviamente tutto questo non viene fuori gratis...la teoria che vi e' dietro ai sistemi con segnali campionati è spesso ostica a quanti sono abituati a lavorare con sistemi analogici, e poi occorre trovare un adeguato hardware su cui implementare il sistema di calcolo. Solitamente i sistemi DSP vengono realizzati utilizzando processori dedicati (TI, AMD, etc.) abbastanza difficili da reperire in piccole quantità e con un case difficile da maneggiare con metodi casalinghi (QFP, BGA, etc.). In alcuni casi è possibile ricorrere ai vari EVM/DSK, ovvero dei sistemi di valutazione del microprocessore DSP realizzati dal costruttore stesso. Queste piastrine contengono oltre al microprocessore un convertitore AD/DA, la RAM, una piccola EPROM con un programma che permette di interfacciare l'EVM con un PC, e poco altro. Questa soluzione è stata percorsa da vari amatori (oltre ai sottoscritti, che hanno utilizzato il DSK per il TMS320C50, si guardi ai numerosi esempi di impiego dell'EVM56002), ma alla facilità di uso si contrappone il costo (abbastanza elevato, rispetto al valore dell'hardware impiegato), la rigidità del sistema, e la difficile reperibilità dell'EVM.
Infine è possibile da qualche tempo ricorrere a normali processori "general purpose" che offrono ormai prestazioni di calcolo ben superiori a molti processori DSP. Uno dei primi esempi in questo senso venne presentato da Matiaz Vidmar S53MV con un sistema basato su 68000 totalmente autocostruito, poi con l'avvento dell'Intel 80486 e superiori programmi di DSP per radioamatori hanno cominciato ad essere diffusi un po' dovunque.
Le applicazioni più frequenti delle tecniche DSP nel campo amatoriale hanno riguardato il filtraggio dei segnali (Hamview, Spectran, W9GR, e i vari Timewave, MFJ, etc.), la demodulazione di modi digitali (RTTY, packet, etc. - si veda ad esempio i software sviluppati da HB9JNX), e la ricerca di segnali spersi nel rumore (ancora Spectran, Specview, AF9Y, etc.). Vi è comunque un settore di applicazione che non è stato ancora affrontato, se non marginalmente: il ricevitore digitale!
L'idea che c'e' alla base del ricevitore DSP è molto semplice: si prende un ricevitore "tradizionale" e, da un certo punto in poi, tutta la circuiteria posta fra tale punto e l'altoparlante viene rimpiazzata da un sistema costituito da ADC + CPU + DAC. I vantaggi della soluzione sono potenzialmente enormi, il problema è che le caratteristiche fisiche dei componenti usati (in particolare gli ADC) pongono dei notevoli limiti alla sua realizzazione.
Uno dei problemi principali da risolvere è ovviamente la dinamica del sistema. Si ha che
D » 6N
dove D è la dinamica dell'ADC calcolata su tutta la sua banda passante, e N è la risoluzione in bit dell'ADC. Oggi sono disponibili ADC che arrivano sino a 24 bit di risoluzione, con una banda passante di circa 22 kHz, e che quindi offrono una dinamica teorica di 144 dB. Se invece vogliamo salire a frequenze più elevate (qualche decina di MHz) dobbiamo accontentarci di 8-10 bit di risoluzione
E' possibile comunque estendere la dinamica dell'ADC usando solo una parte di tutta la banda passante disponibile, ovvero sovracampionando il segnale in ingresso all'ADC. Sovracampionando il segnale si ha infatti un guadagno di dinamica pari a 3*Ba/B dove B è la banda passante effettivamente occupata dal segnale, e Ba è la banda passante dell'ADC. Un notevolissimo esempio di uso di questa tecnica è offerto dal ricevitore Collins HF2050, dove un convertitore da soli 7 bit di risoluzione (= dinamica 42 dB) viene utilizzato per campionare la media frequenza a 3 MHz: tuttavia la banda passante effettiva del segnale è molto ridotta (circa 8 kHz), per cui la dinamica effettiva è ben superiore a 42 dB!
La dinamica ottenibile dall'ADC è un parametro molto importante, perché è il parametro che controlla la resistenza del ricevitore digitale alle interferenze provenienti da segnali prossimi al segnale desiderato. Si pensi infatti come potrebbe comportarsi un ADC che tenta di campionare un segnale da pochi mV, se a 5 kHz di distanza viene ricevuto contemporaneamente un segnale da 100 mV RF! Un accorgimento molto utile per aumentare la resistenza alle interferenze provenienti da canali adiacenti (almeno entro certi limiti), è quello di anteporre all'ADC un filtro passabanda (analogico!) con un ottimo fattore di forma: in questo modo si potrà utilizzare la pendenza del filtro per attenuare adeguatamente il segnale interferente.
Una volta risolto il problema della dinamica dell'ADC, la realizzazione degli algoritmi che realizzano digitalmente le equivalenti funzioni analogiche non presenta grandi difficoltà.
Il problema che rimane è come dimensionare la parte del ricevitore posta fra l'antenna e l'ADC, che è ancora "analogica". Questa parte conterrà mixer, oscillatori, amplificatori, filtri, etc. e realizza la funzione di preselezionare il segnale, amplificarlo e convertirlo ad una frequenza adeguata all'ADC. Possiamo schematizzare questo insieme di circuiti come una scatola nera collegata fra antenna e ADC, e caratterizzata da un certo guadagno G.
Quanto vale G ? Il calcolo è molto semplice: Se xm è il minimo segnale digitizzabile dall'ADC, occorre che sia G > xm/n0 dove n0 è il rumore termico all'ingresso del ricevitore. In questo modo siamo sicuri che il rumore termico verrà campionato dall'ADC con almeno un bit di risoluzione. G però dovrà essere controllato da un opportuno AGC, in quanto il segnale massimo accettabile all'ingresso del ricevitore sarà xM/G, dove xM è il valore di fondo scala dell'ADC! Occorre quindi diminuirne opportunamente il guadagno in funzione dell'ampiezza del segnale ricevuto, pena la saturazione dell'ADC.
Per verificare la fondatezza e fattibilità di realizzazione di questi concetti sul ricevitore digitale tempo fa è stata realizzata una semplice media frequenza digitale il cui ingresso è sintonizzabile a piacimento fra pochi kHz e 22 kHz circa. Il sistema DSP utilizzato non è altro che una scheda audio collegata al PC e la CPU usata è quella del PC stesso: il software che implementa la media frequenza è realizzato per Windows 95, ed è in fase di sviluppo una versione per Linux.
I risultati ottenuti sono stati notevoli: la dinamica del sistema dipende dalla qualità della scheda audio, ma non è difficile ottenere circa 80 dB di dinamica con una scheda audio "off the shelf". Il software attualmente implementa per ora un demodulatore AM/SSB, un AGC con costante di tempo selezionabile, e un level meter molto accurato, che permette di fare misure di livello con precisione inferiore al dB. Vi è un rudimentale filtro passa banda all'ingresso della IF (realizzato con un semplice biquad), ma questo filtro è destinato ad essere notevolmente migliorato nel prossimo futuro. Verranno poi aggiunti ulteriori dispositivi (noise blanker, denoiser, notch automatico, display panoramico, etc.) che renderanno il sistema estremamente flessibile.
La media frequenza digitale così realizzata può essere utilizzata ad esempio collegandola direttamente all'uscita di IF a 10 kHz di un voltmetro selettivo W&G, oppure collegata ad alcuni ricevitori quali il Racal RA6830, che dispone di una uscita IF a 6.4 kHz. In alternativa un semplice convertitore (realizzabile ad esempio con un comune 74H4053 collegato come H-mixer) permette di collegare la scheda audio all'uscita di media frequenza disponibile su numerosi altri ricevitori. Un progetto per la realizzazione di un ricevitore autocostruito "all digital" controllato da PC è comunque in fase di sviluppo.
L’interfaccia utente del prototipo software

Bibliografia e web link:
A. Oppenheim, W. Shaefer: l’elaborazione numerica dei segnali, Franco Angeli Editore, Milano 1993
U. Rohde: Communications Receivers: Principles and Design, MacGraw-Hill, 1988
M. Vidmar: “Digital Signal Processing Techniques for the Radio Amateur”, VHF Communications 3/1989 e segg.
http://www.weaksignals.com sito di distribuzione di Spectran, Hamview, Jason, etc.
http://www.detomasi.it sito con il progetto del ricevitore digitale.
|