Laboratorio virtuale di strumentazione digitale Prof. Chirizzi Marco www.elettrone.altervista.org www.marcochirizzi.blogspot.com [email protected] In questa sessione iniziamo con la descrizione dell’attività di laboratorio di strumentazione digitale. Il software che permette di realizzare un laboratorio virtuale è Labview, che è un applicativo, ovvero, un software di simulazione, di un certo spessore sia in ambito aziendale che, da un decennio a questa parte, in ambito scolastico. Gli obiettivi da raggiungere sono i seguenti: a) familiarizzare con questo applicativo in modo da coglierne i tratti essenziali e le funzionalità di base attraverso slide esplicative esposte dal docente, nonché esercizi mirati per macro argomenti; b) sottolineare gli aspetti e le prerogative che possono essere di supporto alla didattica e all’apprendimento dell’utenza nella scuola media secondaria; c) fornire gli strumenti teorico – applicativi del software per realizzare un progetto, attinente con gli argomenti di elettronica e telecomunicazioni, a scelta del candidato, in cui fossero specificati gli obiettivi didattici e la classe a cui è destinato il progetto. In base all’ultimo punto, il sottoscritto ha scelto di preparare una ipotetica lezione che utilizza i Virtual Instrument (VI) di labview al fine di studiare e realizzare, in simulazione, la modulazione FM, tenendo presente che il target è una ipotetica classe quinta di un ITIS, a indirizzo “Elettronica e Telecomunicazioni”. La presente dispensa ha l’obiettivo di realizzare uno strumento virtuale in grado di simulare il funzionamento di un sistema di modulazione e demodulazione di ampiezza e di frequenza. Il progetto è rivolto agli studenti degli Istituti Tecnici Industriali, a indirizzo Elettronica e Telecomunicazioni. Questo argomento di elettronica, applicata alle Telecomunicazioni, presenta non pochi problemi di natura tecnica se si cerca di realizzare una esperienza reale di laboratorio. I problemi principali sono: La difficoltà nel realizzare circuiti funzionanti in radiofrequenze; Le difficoltà a realizzare oscillatori alle radio frequenze; Le difficoltà a realizzare la modulazione analogica sia con componenti integrati che con componenti discreti. Lo strumento virtuale in tal senso consente all’insegnante una soluzione meno impegnativa dal punto di vista degli orpelli tecnici di ricerca materiali e risorse fisiche, nonché di messa a punto di in board dall’incerto esito, ma più mirata alla comprensione dell’essenza del processo, nonché elegante e di sicuro interesse da parte di una utenza sempre meno motivata se l’insegnante non si avvale di strumenti informatici e tecnologici in genere la dove i contenuti sono non di immediata comprensione. Prerequisiti di conoscenze e competenze degli studenti q Conoscenza delle funzionalità di base dell’applicativo; q Competenza consolidata nel realizzare semplici VI in Labview; q Conoscenza della teoria dei segnali; q Competenza nel saper interpretare un grafico nel dominio del tempo e nel dominio. Obiettivi di conoscenze e competenze q Conoscere i capisaldi della tecnica di modulazione AM ed FM; q Essere competenti nel saper interpretare uno schema di principio, di funzionamento e a blocchi di un apparato di ricetrasmissione AM; q Raggiungere l’abilità nel realizzare VI in ambiente Labview della complessità di un modulatore AM ed FM; q Essere competenti nell’interpretare grafici nel dominio del tempo; q Essere competenti nel realizzare la trasformata di Fourier in ambiente Labview. Modulatore FM in ambiente Labview Introduzione I contenuti del presente elaborato, come è stato già anticipato, è da considerarsi rivolto a una classe quinta di un I.T.I.S. a indirizzo “ Elettronica e Telecomunicazioni ” Questo argomento si inquadra nell’ambito del corso di telecomunicazioni che abbraccia un intero biennio ITIS: quarto e quinto anno di corso. Durante il primo anno del corso di telecomunicazioni si studiano i mezzi trasmissivi e le loro proprietà, mentre nel secondo anno si presenta sostanzialmente la teoria della modulazione analogica e digitale. L’obiettivo del sottoscritto è quello di evidenziare, come ampiamente discusso nelle pagine precedenti della presente dispensa, una possibile applicazione di Labview, che ha una certa importanza nell’ambito della didattica della simulazione di sistemi difficilmente riproducibili in ambito scolastico per le ragioni addotte sopra. E’ importante che la lezione abbia inizio con una breve introduzione sul concetto matematico e fisico della modulazione FM, affinché gli alunni possano comprendere al meglio le architetture circuitale dei sistemi di modulazione e demodulazione, simulati in ambiente Labwiev . Concetto di modulazione FM La lezione ha inizio con una serie di esempi significativi sulle applicazioni della modulazione, specificando, in particolar modo, quelle che sono le ragioni per le quali è necessari, in certe circostanze, ricorrere a tale tecnica di trasmissione. Pertanto, un argomento di cui non si può fare a meno di sviluppare è la modulazione traslata, con le relative caratteristiche che la contraddistinguono dalla modulazione base. Una volta introdotta la definizione di segnale modulante e segnale portante, si introduce il concetto di modulazione di frequenza, supponendo, per semplicità di calcolo, che i due segnali siano sinusoidali. Presupponendo il fatto che gli alunni siano a conoscenza dell’analisi matematica differenziale, è ragionevole sviluppare l’argomento come segue: La modulazione FM consiste nel modificare la frequenza della portante, proporzionalmente al valore istantaneo v m (t ) della modulante. In formula si ha: ω (t ) = ω P + K f v m (t ) alla quale corrisponde la frequenza istantanea: f (t ) = f P + K f v m (t ) 2π = fP + ∆ F dove K f è la costante di modulazione, che dipende dalla struttura circuitale del modulatore FM. La quantità ∆ F rappresenta la deviazione istantanea della frequenza rispetto al valore in assenza della modulazione. Per ricavare l’espressione del segnale modulato in frequenza, è necessario definire la pulsazione ω (t ) come la derivata temporale della fase del segnale: ω (t ) = d θ (t ) dt da cui scaturisce l’integrale: θ (t ) = ∫ ω (t ) d t = ω P t + K f ∫ vm (t ) d t Ricordando che, per ipotesi, la portante e la modulante sono sinusoidali, possiamo scrivere: [ v(t ) = AM cos (θ (t )) = AM cos ω P t + K f = AM cos ( ω P t + K f VM ωm sen (ω m t ) ) ∫ vm (t ) d t ]= Questa espressione verrà, in seguito, implementata da un modulatore FM virtuale in ambiente Labwiev. Il progetto proposto converte il segnale FM in un segnale con ampiezza proporzionale alla frequenza del segnale stesso, tramite un filtro lowpass. Esso, infatti, attenua le frequenze più elevate e rende invariate quelle ad alte frequenze generando un segnale molto simile a quello modulato in AM. Ciò comporta la realizzazione di un blocco funzionale uguale a quello per la demodulazione AM. Per tale ragione, è opportuno definire anche la modulazione e demodulazione di ampiezza di un segnale. La prima consiste nel far variare l’ampiezza della portante proporzionalmente al valore istantaneo del segnale modulante. In formula si ha: A(t ) = AM + K a v m (t ) in cui A(t ) è il valore istantaneo dell’ampiezza della portante nell’istante t , AM l’ampiezza della portante in assenza di modulazione, K a la costante di proporzionalità caratteristica del modulatore e v m (t ) il valore istantaneo della modulante. In base all’espressione della portante, si ha: v(t ) = [AM + K a v m (t )] cos ω P t Se il segnale modulante è sinusoidale di ampiezza VM e pulsazione ω m < ω P , possiamo scrivere: v(t ) = [ AM + K a VM cos ω m t ]cos ω P t Definendo indice di modulazione la quantità: m= K a VM AM l’espressione precedente diventa: v(t ) = AM [1+ m cos ω m t ] cos ω P t La demodulazione AM è il processo mediante il quale è possibile estrarre il segnale modulante dal segnale modulato. La figura in basso rappresenta lo schema elettrico del demodulatore lineare di ampiezza, detto anche rivelatore a inviluppo. Figura 1. Schema elettrico del rivelatore a inviluppo. Il progetto in ambiente labwiev proposto include anche la simulazione del funzionamento di questo circuito, il cui funzionamento può essere descritto come segue: Quando all’ingresso del rivelatore viene applicato il segnale modulato in ampiezza, in corrispondenza di ciascun picco positivo il diodo risulta polarizzato direttamente e il condensatore C si carica a un valore di tensione circa uguale a quello di picco. Quando il segnale AM assume valori inferiori a quello di tensione presente ai capi del condensatore, il diodo cessa di condurre, perché polarizzato inversamente, provocando la scarica del condensatore attraverso la resistenza R , con una velocità che dipende dal valore della costante di tempo RC . Il processo di scarica del condensatore dura sino a che il diodo riprende a condurre. L’andamento della tensione ai capi del condensatore segue l’inviluppo della tensione modulata in ampiezza, cioè la forma d’onda del segnale modulante originario con sovrapposta una componente continua e un residuo della portante. I componenti R1 e C1 costituiscono un filtro passa – basso, che ha la funzione di eliminare il residuo della portante. I componenti R2 e C 2 costituiscono un filtro passa – alto, che ha la funzione di eliminare la componente continua sovrapposta al segnale demodulato. Simulazione di un demodulazione FM sistema di modulazione e Il VI progettato simula una modulazione di frequenza sulla base dei valori di frequenza ed ampiezza del segnale portante e modulante, nonché sul valore della deviazione di frequenza. Nello stadio demodulatore, composto essenzialmente da due filtri passa – basso, un diodo e un gruppo di rivelazione RC, devono poter essere fissate la tensione di soglia Vγ del diodo, la frequenza di taglio dei filtri e le costanti di tempo τ dei circuiti elettrici. La realizzazione dello strumento virtuale in questione ha richiesto l’utilizzo del software LABVIEW , versione 6.1. Per rendere il VI leggibile e più semplice dal punto di vista dell’architettura circuitale, si è ricorso all’uso di sottoprogrammi. Il VI principale ( vedi figure 1a e 2a ) è essenzialmente composto da quattro sottoprogrammi: Modulatore FM; Diodo; Rete RC rivelatrice; Filtro RC passa – basso. Figura 2a. Programma principale - Modulatore e Demodulatore di frequenza Figura 1b. Pannello frontale dello strumento virtuale Al programma principale è affidato il compito di raccogliere i vari input dati dall’utente e di indirizzarli ai sottoprogrammi, in modo che, una volta elaborati, venga restituito il risultato in forma grafica ( waveform chart ). Il programma simula il funzionamento di un modulatore FM grazie al sottoprogramma Mod. FM. Il segnale FM viene poi convertito in un segnale con ampiezza proporzionale alla frequenza del segnale stesso tramite un filtro lowpass. Esso, infatti, attenua le frequenze più elevate e rende invariate quelle ad alte frequenze generando un segnale molto simile a quello modulato in AM. Ciò comporta la realizzazione di un blocco funzionale uguale a quello per la demodulazione AM. Osservando la figura 1 si nota infatti la presenza di un diodo che permette il passaggio delle sole oscillazioni positive ( semionde positive ) del segnale. Il circuito di rivelazione estrapola l’inviluppo di modulazione ( segnale modulante ) ed il filtro passa – basso lo “ pulisce ” liberandolo da eventuali picchi. SubVI del modulatore FM Il sottoprogramma in questione è in grado di simulare un segnale modulato in frequenza, la cui espressione matematica risulta essere: ( V (t ) = AP cos ω P t + m f sen ωm t ) dove AP , Am , ω P , ωm , m f , sono rispettivamente l’ampiezza della portante, l’ampiezza della modulante, la pulsazione della portante, la pulsazione della modulante, il coefficiente di modulazione, definito dall’espressione: mf = dove ∆ F = K f Am 2π K f Am 2π f m = ∆F fm rappresenta la deviazione istantanea di frequenza. E’ importante notare che il coefficiente di modulazione m f dipende sia dall’ampiezza sia dalla frequenza della modulante. Il VI ( vedi figura 2 ) è costituito da un for loop nel quale viene effettuata la miscelazione dei segnali portante e modulante, che si suppongono entrambe sinusoidali. La frequenza dei due segnali può essere variata attraverso due controlli numerici ( numeric control ) e viene dapprima divisa per il numero di campioni al secondo e poi moltiplicata per la costante 2π , in modo da ricavarne la relativa pulsazione. Dall’uscita dei moltiplicatori, i due segnali vengono inviati all’ingresso della struttura for loop, la quale itera le operazioni del programma in essa contenuto per un numero di volte imposto su N. All’interno della struttura for loop, le due pulsazioni risultano moltiplicate per il valore assunto dal terminale di iterazione i , che funge da variabile temporale. Figura 2. SubVI modulatore FM. In seguito, il valore facente capo al controllo “frequenza modulante ” è posto in ingresso al blocco funzionale seno, che calcola i valori assunti nel tempo dalla funzione sen ωm t . A questo punto, detta funzione viene moltiplicata per il valore ottenuto dal rapporto tra deviazione di frequenza e frequenza modulante, che definisce l’indice di modulazione m f , e successivamente sommato al valore facente capo al controllo numerico frequenza portante. Il risultato ottenuto è inviato all’ingresso del blocco funzionale coseno, che si occupa di calcolare il coseno del dato in ingresso. L’uscita di questo blocco costituisce il segnale modulato in frequenza, il quale può essere visualizzato prelevandolo dal terminale di uscita del for loop e inviandolo al terminale di waveform graph. Un ulteriore utilizzo del waveform graph consente di visualizzare anche il segnale modulante. La figura 3 riporta il pannello frontale mediante il quale l’utente può interagire con lo strumento virtuale. Figura 3. Pannello frontale del subVI. SubVI del diodo Il sottoprogramma simula il funzionamento di un diodo a semiconduttore: quando la differenza di potenziale tra anodo e catodo supera la tensione di soglia Vγ , il diodo conduce introducendo una caduta di tensione ai capi del componente, pari alla tensione di soglia. Per simulare il diodo è stata utilizzata una struttura for loop, il cui terminale di conteggio N è pilotato da un blocco array size, che restituisce le dimensioni dell’array collegato al terminale anodico. Nella struttura for loop vengono caricati l’array anodo e il valore della tensione di soglia impostata. Un comparatore greater effettua il confronto tra il valore assunto dalla tensione anodica e il valore della tensione di soglia. Se l’anodo è a potenziale maggiore rispetto alla tensione Vγ , il comparatore fornisce in uscita lo stato logico 1, altrimenti si ha lo stato logico 0. Lo stato logico in uscita del comparatore è inviato all’ingresso di selezione di un blocco select, il quale restituisce in uscita il valore collegato al terminale true o false a seconda che l’ingresso di selezione sia 1 oppure 0. se sarà presente lo stato logico 1, al terminale di uscita della struttura for si ottiene la tensione anodica diminuita di una quantità pari alla tensione di soglia. La figura 3 riporta il subVI del diodo, mentre la figura 4 rappresenta il pannello frontale dello strumento virtuale. Figura 3. SubVI del diodo Figura 4. Pannello frontale del subVI SubVI della rete rivelatrice RC Questo programma simula una rete RC rivelatrice, la quale, attraverso la carica e scarica di un condensatore, permette di ottenere l’inviluppo della modulante dal segnale modulato ricevuto. Per effettuare tale operazione, sono necessarie due strutture: - struttura for loop; - struttura formula node. La struttura formula node permette di scrivere una espressione matematica al suo interno, per poi essere implementata. Osservando la figura 5, notiamo che il VI contiene un ciclo for loop in cui è stato utilizzato un comparatore del tipo greater or equal , il quale, confrontando il dato relativo all’istante precedente, reso disponibile da uno shift register , con quello relativo al segnale in ingresso, fornisce in uscita lo stato logico 1 se il segnale d’ingresso presenta un valore maggiore del primo. Figura 5. SubVI della rete RC rivelatrice L’uscita binaria del comparatore è inviata all’ingresso di selezione di un selettore, il quale lascia passare il segnale d’ingresso ( In ) se esso è maggiore del segnale relativo all’istante precedente, altrimenti viene implementata l’espressione matematica scritta all’interno della struttura formule node. L’uscita del selettore è inviata al terminale di uscita dello shift register, il quale memorizza i dati e li rende disponibili al ciclo successivo come valore precedente. La figura 6 rappresenta il relativo pannello frontale. Figura 6. Pannello frontale del subVI SubVI del filtro RC passa – basso Il VI relativo a questo sottoprogramma simula il filtraggio del segnale rivelato, in modo da eliminare le componenti a frequenze elevate, “pulendo” il segnale da picchi di tensione. La costante di tempo del filtro la si può impostare dal programma principale. La figura 7 riporta il subVI. Figura 7. SubVI del filtro passa - basso Il funzionamento del sottoprogramma è simile a quello che implementa il funzionamento della rete RC rivelatrice, ma in questo caso non compare il gruppo comparatore – selettore. CONCLUSIONI Per il collaudo del programma, è necessario impostare, mediante i controlli numerici posti sul pannello frontale, valori idonei ( vedi pannello frontale riportato in figura 1b ), scegliendo ad esempio una frequenza della portante che sia maggiore di quella della modulante e una costante di tempo del filtro passa – basso di valore circa uguale a 1 / 2 π f , dove f è la frequenza della modulante. Inseriti i valori, si dovranno ottenere sui tre waveform chart i grafici relativi alla modulazione e demodulazione di frequenza.