Doppia Rampa
Caruso Enrico, Clocchiatti Dario, D'Aronco Stefano, Scarbolo Paolo
Indice
1 Scopo della prova 2
2 Voltmetro numerico a doppia rampa 3
3 Soluzione circuitale 9
4 Misure automatiche con Matlab 16
5 Risultati e Conclusioni 30
A Cenni teorici sul calcolo delle incertezze 37
B Amplicatore Operazionale e circuiti di misura 43
C Componentistica 48
D Strumentazione e comunicazione 55
1
1 Scopo della prova
l'obbiettivo di questa esercitazione è quello di realizzare un voltmetro doppia rampa e di analizzarne il
circuito di base, in particolar modo studiare i parametri che inuenzano il suo corretto funzionamento.
la metodologia adottata dal voltmetro a doppia rampa per poter discretizzare la tensione in ingresso ed
in seguito valutarla mediante una misurazione di tempo. Le misurazioni verranno eettuate mediante
una serie di strumentazioni che verranno collegate ad un PC dotato di scheda di acquisizione GPIB. In
realizzate dal multimetro digitale in dotazione. Interfacciando questi strumenti mediante Matlab sarà
Lo scopo principale della prova è comunque, oltre alla semplice realizzazione del circuito, il confronto
dei risultati ottenuti mediante l'analisi teorica del circuito e di quelli raccolti mediante una misura
diretta. Per realizzare questo intento, dunque, è suciente eettuare una serie di misure ripetute del
tempo Tx per diversi valori di Vx e successivamete calcolare l'incertezza su questi. Esse potranno essere
dovute ad incertezze di tipo A (nel caso si raccolga un insieme di misure per ogni determinato valore
circuito è possibile ricavare l'espressione teorica di Tx che sarà quindi del tipo:
conoscendo i valori dell'incertezza delle variabili o dei parametri della funzione è possibile tramite la
propagazione degli errori calcolare l'incertezza teorica su Tx . A questo punto per un set di valori di Vx
si ottiene il corrispettivo valore di Tx sia teorico che misurato, con le relative incertezze. Se le misure
e l'analisi teorica del circuito sono state eettuate correttamente allora i due risultati devono essere in
2
2 Voltmetro numerico a doppia rampa
Convertitori analogico digitali
Il cuore di un voltmetro numerico è rappresentato da un convertitore analogico-digitale, il quale traduce
una tensione analogica in ingresso allo strumento in una parola digitale ad N bit la quale può essere
trasmessa ad altri dispositivi per l'analisi dei dati o essere decodicata permettendo di visualizzare
il risultato della misura su un display LCD o LED. Esistono molti tipi di convertitori AD ciascuni
con i suoi pregi e i suoi difetti: per esempio l'ADC ash permette di lavorare ad alte frequenze ma,
dato l'elevato numero di operazionali e resistenze calibrate al suo interno, non si adatta ad essere
impiegato in strumenti nei quali è richiesta elevata risoluzione. Gli ADC ad integrazione permettono
di ottenere grandi risoluzioni a discapito della velocità. Essi possono essere distinti principalmente in
tre categorie: a singola rampa, a doppia rampa e multirampa. Gli ADC a singola rampa sono i più
elementari ma hanno il difetto che il risultato della misura dipende dai parametri dei componenti che
li compongono. Per ovviare a questo inconveniente si preferisce utilizzare degli ADC a doppia rampa
quest'ultimi risultano essere la soluzione più performante tra le tre: non presentano gli inconvenienti
degli ADC a singola rampa e a parità di risoluzione con gli ADC a doppia rampa risultano essere più
veloci. E' da sottolineare però che l'aumento di velocità comporta ad una maggiore complessità di
con una tecnica di conteggio degli impulsi di un oscillatore a quarzo; l'uscita di tale dispositivo è un
3
Il funzionamento base di un ADC a doppia integrazione è il seguente. Supponendo che il con-
incognito Vx da misurare, in tale maniera si crea una corrente I = Vx /R che scorrerà sulla resisten-
Il fatto che la tensione venga riportata a zero alla ne di ogni ciclo equivale a dire che la carica ac-
cumulata dalla capacità durante il tempo Tr è uguale a quella ceduta durante Tx , per questo motivo
il circuito in questione viene anche chiamato a bilanciamento di carica. Il bilanciamento delle cariche
ˆ ˆ
1 1
Vx dt = Vref dt
RC RC
Tr Tx
Vx Tr = Vref Tx
Vref Tx
Vx =
Tr
Misurando entrambi gli intervalli Tr e Tx con la tecnica del conteggio degli impulsi dell'oscillatore di
Tr ∼
= Nr t c Tx ∼
= Nx t c
Sostituendo queste due espressioni nella formula di Vx e supponendo che il periodo di oscillazione
4
Vref Nx
Vx ∼
=
Nr
Nelle formule è stato utilizzato il simbolo ∼
= a causa dell'errore dovuto alla quantizzazione.
Come già detto durante la trattazione, il tempo Tr è costante e quindi la vera e propria conversione
tensione-tempo si ha solamente nella seconda fase del processo. Si può notare che il tempo impiegato
dal segnale per raggiungere lo zero è direttamente proporzionale al valore del segnale d'ingresso.
E' da specicare inoltre che durante il tempo Tr la tensione in ingresso non rimane costante ma è
soggetta a variazioni, dovute per esempio a del rumore sovrapposto ad essa. La carica che si accumula
´
TR
vx (t)dt
Qx =
C
applicando il teorema della media si ottiene:
V x Tr
Qx =
C
Dove Vx corrisponde al valore medio della tensione in ingresso nel periodoTr . Dal momento che la
tensione di disturbo più frequentemente coinvolta è costituita da residui della tensione di rete a 50 Hz,
si sceglie il tempo di integrazione pari ad multiplo di 20 ms (periodo della tensione di rete). In questo
5
ˆ T0 +Tx
1 sin(πf Tx )
VN = V0 sin(2πf t)dt = V0
Tr T0 πf Tx
il valore è un sinc che si annulla per valori di f multipli di 1/Tx , si denisce reiezione di modo normale
l'inverso del valor medio della tensione di rumore normalizzato ad ampiezza unitaria, quindi in dB la
reiezione vale:
V0
RNdB = 20 log
VN
Tuttavia i calcoli eettuati nora si basano sul presupposto che i parametri dell'amplicatore
operazionale siano ideali. Ma in realtà questo non avviene e bisogna tener conto di un certo numero
Tensione di oset;
E' comunque possibile ridurre gli inconvenienti prodotti da queste non idealità; per esempio se l'op-
erazionale non è rail to rail signica che l'uscita non riesce a portarsi al valore di alimentazione. Per
evitare questo problema è suciente prevedere una tensione massima in uscita dall'integratore minore
Se si scrive l'equazione di bilanciamento della carica tenendo conto di una corrente I− non nulla en-
trante nel piedino invertente dell'operazionale e di una tensione di oset Vos diversa da zero si ha per
Vx − Vos Vref − Vos
− I − Tr = + I − Tx
R R
esprimendo Vx si ottiene:
Tx Tx Tx
Vx = Vref + RI − 1 + + Vos 1 +
Tr Tr Tr
quindi in questo caso l'uscita dipende anche da altri parametri i quali ovviamente vanno ad aumentare
da zero all'ingresso del comparatore a soglia, carica residua sul condensatore oppure un errore di non
6
Tensione di soglia del comparatore diversa da zero
La tensione di oset del comparatore di soglia e la carica residua del condensatore producono un errore
Figura 4: Forma d'onda con errore dovuto alla tensione di oset del comparatore a valle
Guardando l'andamento di Voi (t), g. 4, si vede che nella prima fase d'integrazione la non idealità
non inuisce in quanto Tr è ssata, ma la seconda fase è sensibile alla tensione di oset del comparatore
in quanto se presente, in base al segno che ha, fa commutare il segnale prima che attraversi lo zero
(contando quindi meno impulsi di quanti dovrebbe) oppure lo fa commutare dopo l'attraversamento
Tuttavia osservando con attenzione il diagramma temporale si nota come all'inizio del ciclo sucessivo
sia presente sul condensatore una carica residua che produce una tensione su esso pari appunto a Vof f ,
quindi l'intera forma d'onda viene osata di questa quantità e di conseguenza le misurazione successive
Analizziamo ora cosa succede quando è presente una carica residua nel condensatore.
Figura 5: Forma d'onda con errore dovuto alla carica residua sul condensatore
In tal caso l'intera caratteristica viene osata di una certa tensione. Come nel precedente caso la
prima fase d'integrazione non da problemi perché Tr è indipendente da ciò che accade nel circuito,
ciò con è vero invece nella seconda fase in cui a seconda del segno della tensione sul condensatore il
circuito commuta prima o dopo dell'attraversamento per lo zero, portando ad un conteggio sbagliato
degli impulsi. Questo errore è di natura diversa di quello appena visto per la tensione di soglia del
comparatore, ciò nonostante osservando le forme d'onda si perviene alle stesse conclusioni; infatti alla
ne del primo ciclo la tensione ai capi del condensatore è zero quindi anche la carica residua è nulla,
quindi la carica residua scompare alla ne del primo ciclo non inuenzando le misure successive.
7
Inne l'ultima fonte di errore deriva dal fatto che in realtà la rampa non è perfettamente lineare e
quindi in realtà il segnale potrebbe attraversare lo zero prima o dopo il tempo Tx reale. Dal momento
che l'espressione analitica della rampa reale non è a nota, non è facile stimare il valore di questo tipo
d'errore.
Ci sarebbero anche altre non idealità, per esempio un'amplicazione dierenziale ed un CMRR
(common mode rejection ratio ) non inniti, ma l'inuenza di questi ultimi sulla risposta del circuito é
più modesta.
Figura 6: Forma d'onda con errore dovuto alla non linearità della rampa
8
3 Soluzione circuitale
Lo schema circuitale utilizzato è quello di g. 7 , il quale è costituito da diversi blocchi:
Integratore;
Comparatore a soglia;
Logica di controllo;
Amplicatore in ingresso;
TL084;
LM358;
NE555;
ADG419;
LM7805C;
Il contatore d'impulsi, il circuito di memoria e visualizzazione non vengono realizzati dal seguente cir-
i diversi componenti e blocchi del circuito. Tutti i componenti sopra citati sono descritti ampiamente
in appendice C.
Amplicatore d'ingresso
L'amplicatore d'ingresso non è indispensabile
9
10
valore, che nel nostro caso sono state scelte pari a 47 kΩ.
Nel seguito della prova con tensione di misura ci si riferisce alla tensione in uscita dall'amplicatore
in ingresso.
La tensione di riferimento Vref è stata fatta tramite un semplice inseguitore di tensione. Supponendo
che l'operazionale sia ideale, la corrente assorbita dal morsetto I+ è nulla, quindi la tensione V+ risulta
R2
V+ = −VEE
R2 + R1
essendo che V+ = V− = Vo , abbiamo che:
R2
Vref = −VEE
R2 + R1
11
Integratore e comparatore a soglia
La scelta dei componenti per il doppia rampa devono soddisfare alcuni vincoli dettati dalle speciche di
progetto, in particolare R3 e C1 vanno scelti in maniera tale che, per il massimo valore d Vx ammesso
Vx
voi (t) = t
RC
La tensione massima di voi si ottiene quando Vx è quella massima e quando t = Tr . Tale tensione
V xM AX
Tr < Vsat
RC
Dal momento che la tensione massima all'ingresso dell'integratore è 10 V , il periodo Tr scelto è 20 ms
V xM AX
RC > Tr = 16.67 · 10−3 s
Vsat
Per il nostro progetto è stato scelto R3 = 220 KΩ e C1 = 100 nF , il che signica avere RC = 22 · 10−3 ,
soddisfacente la condizione imposta per il limite inferiore. Con questa scelta dei parametri si ottiene
una tensione massima all'uscita dell'integratore pari a VoiM AX = 9.09 V ben lontano dalla tensione di
saturazione.
Il seguente circuito, a dierenza del circuito analizzato in precedenza presenta in uscita un limitatore
di tensione a diodo zenner. Tale scelta è indispensabile per ottenere un segnale compatibile con il
circuito di controllo che può solamente ricevere segnali logici unipolari il cui stato basso vale 0 V
e il cui stato alto vale 5 V. La soluzione a diodo zenner e molto conveniente infatti con un unico
12
Prima di proseguire nella trattazione è utile riportare alcuni parametri di interesse del diodo zener
a Vc − Vz .
Innanzitutto è da specicare che la corrente che
Figura 11: Caratteristica tensione corrente dello
scorre sulla resistenza non è la semplice Iz , ma è
zener
quest'ultima sommata alla corrente in entrata al
piedino di trigger del NE555. Però dal momento che la corrente di trigger ha un valore tipico di 0, 5
µA è possibile trascurala. Quindi possiamo scrivere che:
Vc − Vz
R4 =
Iz
Sapendo che Vc = 15 V, V z = 4, 7 V e scegliendo una Iz di 10 mA si ottiene una resistenza R4 =
∼
1050Ω = 1kΩ. Dal momento che le resistenze che abbiamo utilizzato nel progetto dissipano al massimo
1/4 W, bisogna vericare che il valore scelto per la resistenza sia compatibile:
2
(Vc − Vz ) ∼
PR4 = = 0.11 W
R4
E' da ricordare che la condizione sulla potenza deve essere vericata anche quando Vc = −15 V, inoltre
questo caso risulta più critico del precedente perchè |V f | < |V z|, quindi:
2
(Vc + |Vf |)
PR 4 =
R4
ssando approssimativamente una tensione Vf pari a 0.7 V si ottiene una potenza pari a 0.21 W, che
13
Logica di controllo
anche il segnale di trigger del NE555, quindi come Figura 13: Forme d'onda caratteristiche della logica
14
piedino S del latch interno e quindi lo stato dell' NE555 non viene alterato. Questa condizione rimane
inalterata nché dopo un tempo Tc il monostabile ritorna al suo stato stabile ovvero la sua uscita va a
0. In tal caso l'ingresso IN del ADG419 riceverà sul piedino uno 0 logico, quindi manderà in uscita il
segnale presente sul pin S1, ovvero Vref . Essendo tale segnale opposto al precedente l'uscita del inte-
gratore crescerà linearmente. Tale uscita risulterà comunque negativa e quindi l'uscita del comparatore
e quelle che seguono rimarranno inalterate. La condizione rimarrà inalterata nché l'uscita dell'inte-
gratore non raggiungerà lo zero, in tal caso quando poi diventerà positiva il comparatore darà in uscita
una tensione negativa che vale −Vcc che verrà limitata dallo zener a 0V. Come visto precedentemente,
quando sul morsetto di trigger del NE555 si presenta una transizione negativa del segnale, l'NE555
passa allo stato instabile, portando la sua uscita a livello logico alto. In tal caso quindi l'ADG419
riceverà sul piedino IN un 1 logico, quindi manderà in uscita il segnale presente sul pin S2, ovvero
Vx. Quindi la tensione sull'integratore inizierà a decrescere linearmente e quando ritornerà a essere
negativa l'uscita del comparatore tornerà a valere Vcc e l'ingresso dell'NE555 tornerà ad essere un 1
Quindi per la logica di controllo è solamente necessario scegliere i valori di R11 e C3 tali che il ciclo
di temporizzazione dell'NE555 valga 20 ms, permettendo quindi di avere una reiezione teoricamente
Come visto precedentemente il tempo in cui l'uscita rimane allo stato instabile è dato dalla formula:
Tr = 1.1RC = 20 · 10−3 s
I valori della resistenza e del condensatore che abbiamo scelto per soddisfare questa condizione sono
stati R11 = 1 M Ω e C3 = 18 nF , inoltre nel circuito, in serie alla resistenza R11 abbiamo inserito una
resistenza variabile R12 in maniera da poter tarare il tempo perfettamente a 20 ms e quindi garantire
Il trigger di Schmitt è stato introdotto nel progetto perché l'uscita dell'NE555 presentava una
distorsione. In particolare, per un breve istante iniziale, la tensione non raggiungeva il valore massimo,
questo è un inconveniente che può portare a degli errori nel circuito, in particolare se il valore di
tensione è inferiore a Vinh (2.4V) l'ADG continua a mandare in uscita la Vref e quindi la tensione
di Schmitt unipolare non invertente. In pratica questo circuito ha due soglie (V1 e V2 ), una alta e una
bassa non coincidenti: quando l'entrata è al di sotto della soglia bassa, l'uscita assume il valore basso;
quando l'entrata si trova al di sopra della soglia alta, l'uscita assume il valore alto. Quando il valore
in ingresso si trova compreso tra le due soglie, l'uscita conserva il valore precedente nché l'entrata
non sia variata sucientemente da causarne il cambio. Questo funzionamento implica una qualche
15
4 Misure automatiche con Matlab
Funzioni dello script:
Riassumendo le funzionalità dello script, potremmo elencare le seguenti operazioni:
Main_Measure:
La funzione Main_Measures è il corpo principale dello script. Essa permette la misurazione dei dati
e il loro immagazzinamento all'interno di vettori e di matrici pre-allocate.
Lo scopo della prima parte dello script, dunque, è quello di caratterizzare le tre grandezze fondamentali
del circuito voltmetro a doppia rampa. Nel nostro caso N è stato scelto come pari a 50, da non
Diamo ora uno sguardo globale alla funzione, essa è strutturata in due sezioni, la prima riguarda
la preallocazione delle aree di memoria per i vettori e per le matrici utilizzate in seguito, la seconda
consta di due cicli for innestati l'un l'altro per permettere di eettuare le misurazioni e di variare al
Tx rappresenta la quantità temporale che viene inserita nella formula per il calcolo di Vx pro-
pria del voltmetro a doppia rampa. Più avanti vedremo che tale formula verrà invertita per
determinare invece Tx in funzione di Vx e per permetterci di propagare gli errori delle grandezze
implicate.
Tr corrisponde alla quantità temporale impostata con il circuito monostabile la quale deve essere
multipla del periodo della tensione di alimentazione per evitare grossi errori dovuti alla non
voltmetro che nel nostro caso è costituito da un amplicatore non invertente con guadagno di
tensione pari a 2.
16
function Main_Measures
GPIB_Init;
global N;
N=50;
global Vi;
global Vm;
global Tx;
global Tr;
Vi=0.1:0.1:5;
Vx=zeros(N);
Vx_uB=zeros(N,1);
Tx=zeros(N);
Tx_uB=zeros(N,1);
Tr=zeros(1,N);
In questa prima parte si possono notare, tra le varie denizioni dei vettori a scopo mnemonico, la
funzione GPIB_Init che verrà analizzata in seguito e la denizione di variabili globali per alcuni
vettori più diusi. Ne segue l'indentazione dei cicli for per la misurazione iterata delle grandezze. La
Power_Set(2.5);
Osc_Init('P_WIDTH');
pause(1);
for j=1:N
pause(0.5);
Tr(j)=Osc_Measure('P_WIDTH');
end
uB_Tr=Detect_B('Osc_Tr',mean(Tr));
Questa parte di codice imposta il valore l'uscita dell'alimentatore a 2.5 V (tramite la funzione Pow-
er_Set che verrà descritta successivamente) e in queste condizioni esegue 50 misurazioni del tempo
Tr . La scelta dei 2.5 V è dovuta al fatto che esso è un valore intermedio nel range di variazione dell'in-
gresso. In questo caso, come in tutte le altre misure è stata inserita una pausa dopo l'inizializzazione
dell'oscilloscopio e prima di ogni misura: questo per garantire che l'oscilloscopio (cosi come anche il
multimetro) si trovi nelle condizioni ottimali per eettuare una lunga serie di misurazioni. Infatti
abbiamo notato che l'eseguire tante misure (dell'ordine di 2500) di seguito, può comportare la nascita
delle pause, unite ad un controllo della correttezza della misura, si ottiene uno script più robusto nei
confronti degli errori che possono incorrere. Da notare che, una volta ottenuto il vettore di misurazioni
di Tr si procede alla determinazione dell'incertezza B relativa alla media di tali misurazioni (quest'ul-
tima operazione viene compiuta dalla funzione Detect_B, anch'essa verrà commentata in seguito).
Qui di seguito è riportata la terza ed ultima parte:
17
for i=1:N
Power_Set(Vi(i));
for j=1:N
pause(0.1);
Vx(i,j)=Mult_Measure('VOLT_DC');
end
Vx_uB(i)=Detect_B('Mult', mean( Vm(i,1:N) ) );
Osc_Init('N_WIDTH');
pause(1);
for j=1:N
pause(0.5);
Tx(i,j)=Osc_Measure('N_WIDTH');
end
Tx_uB(i)=Detect_B('Osc_Tx',mean(Tx(i,1:N)));
end
GPIB_Close;
Il ciclo principale riprende il codice già descritto nella seconda parte e lo inserisce nel contesto di 50
misurazioni di ogni grandezza in funzione di 50 variazioni della tensione di ingresso. Quest'ultima, viene
valutata mediante il multimetro (e nel testo viene indicata con Vm), mentre il tempo Tx viene misurato
mediante la medesima funzione di Tr (sempre attraverso il codice denito nella parte precedente).
In entrambi i casi, una volta ottenuto il vettore di misurazioni corrispondenti ad ogni ingresso, ne
viene valutata l'incertezza di tipo B. La scelta di valutare in questo momento l'incertezza di tipo B è
determinata dal fatto che essa è legata al valore del fondo scala: nella maggior parte dei casi, previ
errori sui quali poi faremo alcune considerazioni, il fondo scala si mantiene anche all'interno della
funzione Detect_B e dunque al suo interno verrà realizzata la query per determinare il fondo scala
utilizzato. Da notare che una soluzione sarebbe potuta essere quella di assegnare ad ogni misura un
suo fondo scala mediante la denizione di ulteriori matrici di valori. Questo però avrebbe prolungato
GPIB_Init:
Il codice di questa funzione è molto semplice ed è il seguente:
function GPIB_Init
clear all;
close all;
delete(instrfind);
18
global Osc;
global Mult;
global Power;
Bus_Gpib=7;
Add_Mult=22;
Add_Power=5;
Add_Osc=7;
Mult=gpib('agilent',Bus_Gpib,Add_Mult);
Power=gpib('agilent',Bus_Gpib,Add_Power);
Osc=gpib('agilent',Bus_Gpib,Add_Osc);
Osc.InputBufferSize=5000;
Osc.TimeOut=3;
fopen(Mult);
fopen(Power);
fopen(Osc);
multimetro e all'alimentatore. Gli oggetti Osc, Mult e Power sono i puntatori ai les da aprire per
poter avere accesso ai comandi degli strumenti. Essi sono deniti come variabili globali in quanto
verranno utilizzati in tutte le altre funzioni e questo evita il ripetitivo compito di passare tali elementi
come argomenti delle funzioni. La funzione gpib() riceve come argomenti una stringa identicatrice
dell'oscilloscopio (in questo caso il nome del produttore), il bus sul quale è stata installata la scheda di
acquisizione gpib (che è unica per tutti e tre gli oggetti) e l'indirizzo di ogni strumento (visualizzabile
puntatore al le. Una considerazione importante riguarda il fatto che questa particolare combinazione
L'istruzione delete(instrnd) viene utilizzata per ripulire appunto la variabile instrnd che contiene
le inizializzazioni degli strumenti che erano stati utilizzati ni a quel momento. L'apertura di tanti
les può infatti causare conitti, con questa istruzione tali conitti si prevengono. Prima di eseguire
la funzione è opportuno, sulla riga di comando di Matlab, eseguire i comandi clear all e close all.
Quando viene creato l'oggetto Osc (oppre Mult o Power), Matlab associa allo strumento un buer
per la comunicazione dei dati e il valore di default di questo parametro è 512 byte. Con il comando
Osc.InputBuerSize lo si imposta ad un valore di 5000. Il comando che segue setta il valore di timeout
dell'oscilloscopio ad un valore più basso di quello di default che è 10 secondi (questo parametro viene
modicato solo per una questine di comodità). Inne i rispettivi les vengono aperti, e ora tutte le
istruzioni di query per la comunicazione con gli strumenti possono essere utilizzate.
GPIB_Close:
La funzione GPIB_Close racchiude i seguenti comandi:
19
function GPIB_Close
global Osc;
global Mult;
global Power;
fclose(Mult);
fclose(Osc);
fclose(Power);
delete(instrfind);
clear all;
close all;
Power_set:
La funzione Power_set è così denita:
function Power_Set(Voltage)
global Power;
fprintf(Power,'APPL P6V, %f, DEF',Voltage);
Power_set è una semplicissima funzione che permette di impostare il valore dell'uscita dell'alimen-
tatore. Si nota come sia possibile impartire il comando di imposizione della tensione mediante una
semplice fprintf a cui viene passato il puntatore del le su cui scrivere e una stringa che è relativa a
tale comando specico. L'output formattato, in questo caso, si dimostra estremamente potente perché,
come si nota, ci permette di settare il voltaggio in maniera del tutto svincolata dalla stringa da inviare
al le.
Osc_Init:
function Osc_Init(Str)
global Osc;
fprintf(Osc, 'AUT');
switch Str
case 'N_WIDTH'
fprintf(Osc,':MEAS:NWID?');
NWID=fscanf(Osc,'%f');
fprintf(Osc,':TIM:RANG %f',NWID*1.1);
fprintf(Osc,':TRIG:EDGE:SLOP NEG');
fprintf(Osc,':TIM:REF LEFT');
fprintf(Osc,':TIM:RANG %f',NWID*1.2);
fprintf(Osc,':TRIG:MODE GLIT');
20
fprintf(Osc,':TRIG:GLIT:POL POS');
fprintf(Osc,':TRIG:GLIT:GRE 5 ms');
case 'P_WIDTH'
fprintf(Osc,':MEAS:PWID?');
PWID=fscanf(Osc,'%f');
fprintf(Osc,':TIM:RANG %f',PWID*1.1);
fprintf(Osc,':TRIG:EDGE:SLOP POS');
fprintf(Osc,':TIM:REF LEFT');
fprintf(Osc,':TIM:RANG %f',PWID*1.2);
fprintf(Osc,':TRIG:MODE GLIT');
fprintf(Osc,':TRIG:GLIT:POL NEG');
fprintf(Osc,':TRIG:GLIT:GRE 5 ms');
otherwise
end
L'oscilloscopio, al pari di qualsiasi altro strumento che fornisca un qualsivoglia genere di misura, deve
trovarsi sempre nelle migliori condizioni per eettuarla. In particolare, nel nostro caso, la necessità di
eseguire una misura temporale (sul tempo Tx o sul tempo Tr) ci impone di impostare l'oscilloscopio nelle
migliori condizioni per eettuare tale misura. In questo senso, ad esempio, qualora si dovesse misurare
il semiperiodo negativo della forma d'onda, sarebbe d'obbligo impostare automaticamente i parametri
di visualizzazione della forma d'onda in maniera tale che l'impulso negativo copra la maggior parte
dello schermo e allo stesso tempo sia completamente incluso all'interno di esso. Infatti così facendo
l'errore relativo sulla misura risulta minore in quanto è per denizione inversamente proporzionale al
pansa della semionda positiva o della semionda negativa è fornita dalla funzione suddetta, la Osc_Init.
Tale funzione riceve come argomento una stringa che indica il genere di misura che deve compiere, poi,
riodo alto o del periodo basso. In entrambi i casi viene eettuata una misura grossolana del periodo
(attraverso il comando autoscale), ed in seguito impostato il timer range dell'oscilloscopio pari al 10%
più grande del periodo misurato grossolanamente. A questo punto si imposta il trigger sul fronte di
discesa (o di salita per il P_WIDTH) e si allinea il fronte triggerato a sinistra. Quest'ultimo passag-
gio, tuttavia, non permette di eettuare la misurazione perché l'allineamento a sinistra non garantisce
la presenza del fronte all'interno dello schermo (seppur di poco). Per evitare questo problema viene
eettuato un ulteriore resize del time range, impostandolo ad un valore pari al 20% di quello approssi-
mativo precedentemente letto. Ciò garantisce la presenza dell'impulso da misurare all'interno del range
di visualizzazione e al contempo permette di eettuare una misura più precisa della grandezza perché
La funzione Autoscale presente all'inizio della funzione imposta il trigger in modalità AUTO. Ne
consegue che procedendo verso tensioni più ampie (ci si riferisce a valori di Vm più elevati), quindi
21
verso frequenze più basse e periodi più lunghi, il trigger, impostato su AUTO, non è in grado di rilevare
il giusto evento di trigger proiettando sullo schermo una forma d'onda sfarfallante. Questo comporta
letture delle misurazioni successive decisamente incoerenti. Per eliminare il suddetto problema si può
procedere in due modi: il primo consiste nell'impostare il trigger in modalità NORM e il secondo
è quello di operare in modalità GLITCH. Gli ultimi 3 comandi di ogni cilco case servono appunto
notiamo che per misure di Tx, che corrisponde ad un impulso negativo, il trigger è stato impostato nella
seguente maniera: l'evento di trigger avviene dopo un glitch (impulso) positivo che abbia un'ampiezza
maggiore di 5 ms . Per le misure di Tr invece: l'evento di trigger avviene dopo un glitch (impulso)
negativo che abbia un'ampiezza maggiore di 5 ms . Le ultime due fprintf di ogni ciclo case servono
proprio ad implementare questa funzione. Il valore di 5 ms è stato scelto in quanto ci assicura (essendo
improbabili eventuali altri glitch di simile durata oltre a quelli previsti) che vengano valutati solamente
glitch superiori a tale valore evitando quindi quelli spuri di valore minore che si possono eventualmente
presentare.
Da notare che la funzione Osc_Init viene richiamata soltanto due volte all'interno de primo ciclo
for (in Main_Measure ), con argomenti diversi. Infatti, tale funzione predispone l'oscilloscopio alle
migliori condizioni di misura del relativo periodo, il quale, ssata la tensione di ingresso, varierà in
maniera praticamente impercettibile. Ne consegue che operare una Osc_Init prima di ogni misura
sullo stesso periodo comporterebbe uno spreco di tempo enorme, dovuto al fatto che l'operazione di
autoscale, unita ai comandi che seguono, richiedono un buon numero di secondi per la loro esecuzione.
Osc_Measure:
Qui di seguito è inserito il codice della funzione:
function [Time]=Osc_Measure(Str)
global Osc;
good_measure='false';
switch Str
case 'N_WIDTH'
while (strcmp(good_measure,'false'))
good_measure='true';
fprintf(Osc,'MEAS:NWID?');
Time=fscanf(Osc,'%f');
if (or(Time>1000,Time<1E-7))
good_measure='false';
pause(1);
Osc_Init(Str);
pause(1);
end
22
end
case 'P_WIDTH'
while (strcmp(good_measure,'false'))
good_measure='true';
fprintf(Osc,'MEAS:PWID?');
Time=fscanf(Osc,'%f');
if (or(Time>1000,Time<1E-7))
good_measure='false';
pause(1);
Osc_Init(Str);
pause(1);
end
end
otherwise % in previsione di altri tipi di misurazioni
end
La misurazione del periodo, sia esso positivo o negativo, una volta eseguita la Osc_Init, risulta alquanto
banale da realizzarsi. E' suciente infatti interrogare lo strumento mediante l'apposita query e leggere
la misura subito dopo svuotando il buer. Tuttavia è stata introdotta una dovuta miglioria realizzata
allo scopo di rendere lo script più robusto nel caso di errori di lettura. Infatti abbiano notato che,
qualora i vertici dell'impulso non fossero completamente all'interno della schermata, allora il risultato di
misura era inequivocabilmente pari ad un valore proporzionale a 10E + 37. Nonostante l'impostazione
corretta del trigger operato dalla Osc_Init, tuttavia, è capitato che si ingenerassero comunque errori
casuali di questo tipo; è stato d'obbligo, quindi inserire una logica in grado di eettuare nuovamente
la calibrazione tramite la Osc_Init e ripetere la misura qualora la misura precedente non fosse stata
accettabile. Nel caso da noi considerato, l'intervallo per il quale etichettiamo una misura come non
accettabile è quella che risulta minore della minima risoluzione dell'oscilloscopio (25 ps) a quella che
riteniamo essere una quantità largamente già più grande di quella che mai si presenterà come misurata,
ovvero 50 secondi. Qualora la misura rientri in questo intervallo di esclusione allora viene ripetuta la
Mult_Measure:
function [Voltage]=Mult_Measure(Str)
global Mult;
good_measure='false';
switch Str
case 'VOLT_DC'
while (strcmp(good_measure,'false'))
good_measure='true';
fprintf(Mult,'MEAS:VOLT:DC? DEF,DEF');
23
Voltage=fscanf(Mult,'%f');
if (or(Voltage<1E-9,Voltage>50))
good_measure='false';
pause(1);
end
end
otherwise % in previsione di altri tipi di misurazioni
end
Questa funzione permette di eettuare una misura tramite multimetro di una tensione DC qualora la
stringa immessa come argomento sia `VOLT_DC'. Anche in questo caso abbiamo previsto una piccola
funzione, rappresentata dal ciclo if per il controllo di eventuali errori di misura che possono incorrere
nel processo.
Detect_B:
Il codice della funzione Detect_B è il seguente:
function [uB]=Detect_B(Str,Avg)
global Osc;
global Mult;
Abs_Avg=abs(Avg);
switch Str
case 'Mult'
fprintf(Mult,':VOLT:DC:RANG?');
Fs=fscanf(Mult,'%f');
switch Fs
case 100E-03
uB=(Abs_Avg*0.0050/100+Fs*0.0035/100)/(sqrt(3));
case 1
uB=(Abs_Avg*0.004/100+Fs*0.0007/100)/(sqrt(3));
case 10
uB=(Abs_Avg*0.0035/100+Fs*0.0005/100)/(sqrt(3));
case 100
uB=(Abs_Avg*0.0045/100+Fs*0.0006/100)/(sqrt(3));
case 1000
uB=(Abs_Avg*0.0045/100+Fs*0.0010/100)/(sqrt(3));
end
case 'Osc_Tx'
fprintf(Osc,':TIM:RANG?');
Td=fscanf(Osc,'%f');
24
uB=(0.0001*Abs_Avg+0.001*Td+40E-12)/(sqrt(3));
case 'Osc_Tr'
fprintf(Osc,':TIM:RANG?');
Td=fscanf(Osc,'%f');
uB=(0.0001*Abs_Avg+0.001*Td+40E-12)/(sqrt(3));
end
relativa alla media di una serie di misurazioni. Detect_B è una funzione che riceve in ingresso una
stringa che serve a discriminare la valutazione dell'incertezza di tipo B a seconda che si stia consideran-
Qualora volessimo valutare l'incertezza di tipo B di una misura eettuata con il multimetro, allora lo
switch indirizzerebbe al relativo case `Mult'. In questa parte del codice, viene dapprima discriminato
il fondo scala utilizzato e in seguito viene valutata la relativa incertezza di tipo B (ad un anno dalla
taratura).
Nel caso in cui, invece, dovessimo determinare l'incertezza di tipo B di misure eettuate con l'oscil-
determinato il time range utilizzato (full scale) ed in seguito quanticata l'incertezza in base alla
Da notare il fatto che la funzione Detect_B viene sempre invocata subito dopo aver concluso la
relativa inizializzazione dell'oscilloscopio con la funzione Osc_Init. In questo modo, le misurazioni
eettuate dall'oscilloscopio per quanto concerne la determinazione dell'incertezza di tipo B vengono
comunque realizzate in condizioni ottime, ovvero per le quali la relativa grandezza occupa la maggior
Per quanto riguarda misurazioni con l'oscilloscopio c'è da fare una precisazione. L'utilizzo della
media di N misurazioni per determinare l'incertezza di tipo B relativa, richiede che il fondo scala non
vari durante tutte le misurazioni. L'oscilloscopio, a dierenza del multimetro, presenta valori di fondo
scala (di time division) impostabili a piacere in quanto è disponibile la variazione VENIER ON del time
ssa la tensione in ingresso al voltmetro, è unica per tutte le misure, e quindi è unico anche il fondo
scala con il quale esse sono state realizzate. Tuttavia, la logica che implementa la determinazione di
una misura non accettabile, ha al suo interno la possibilità di attivare nuovamente la Osc_Init allo
scopo di reimpostare il trigger e l'oscilloscopio in generale. Cosi facendo, però, c'è la possibilità che il
fondo scala possa variare all'interno di una serie di misure per tensione di ingresso ssata. Nonostante
questo, però, si può ritenere che, le variazioni di fondo scala siano così modeste da poter non essere
considerate.
Considerazione molto impotante riguarda la divisione per la radice di tre di ogni valore di incertezza
ub . Questo è dovuto al fatto (come gia accennato in appendice A) che le distribuzioni statistiche
ipotizzata dal costruttore dell'oscilloscopio e del multimetro sono di tipo uniforme. Infatti le formule
25
per il calcolo di ub sono di tipo minimo-massimo, ovvero forniscono un intervallo massimo entro il quale
la misurazione possa variare. L'incertezza di tipo B rappresenta comunque una varianza: integrando
una funzione costante in un intervallo (distribuzione unifome) di area unitaria si ottiene che la varianza
della relativa distribuzione è pari al valore massimo in modulo, diviso la radice di tre.
Altre Misurazioni
Per il calcolo di Tx era necessario conoscere e quindi misurare altri parametri tra i quali Vref e Vos ;
per la misura di queste grandezze sono stati utilizzati dei semplici script come per esempio quello per
la misura di tensioni tramite il multimetro, che non sono compresi nel Main_Measure. Di seguito il
codice del suddetto script:
Come parametro di ingresso riceve il numero N di misurazioni che si vuole compiere e restituisce il
vettore delle misure assieme all'incertezza di tipo B calcolata sulla media delle stesse.
R è la resistenza dell'integratore misurata anch'essa tramite multimetro con uno script simile a
Voltage_Measure
V e Rss sono parametri misurati per il calcolo della I− dell'operazionae dell'integratore (vedi
appendice B)
calcolato; per quanto riguarda il primo è suciente fare la media delle misure del tempo acquisite
26
function [ y ] = Tx_mes( Tx )
%Calcolo di Tx misurato
n=length(Tx);
for i=1:n
y(i)=mean(Tx(i,:));
end
end
Per il secondo invece si deve utilizzare la formula che esprime Tx in funzione degli altri parametri:
L'espressione è stata ottenuto ricavando Tx dall'equazione scritta nella sezione 2, che tiene conto di
function y=calc_Tx(Vxm,Vrm,Trm,Vosm,Vm,Rm,Rssm)
%Calcolo di Tx teorico
y=(Vx-Vos-R*(V-Vos)/Rss)*Tr/(-Vr-Vos+R*(V-Vos)/Rss);
end
Tutti parametri passati alla funzione sono i valori medi dei parametri misurati e sono numeri singoli,
approccio di tipo statistico che tiene conto sia delle incertezze sia di tipo A che di tipo B. Per quanto
calcolo dell'incertezza di tipo A, e all'unione di questa con l'incertezza di tipo B per fornire l'incertezza
composta.
Per quanto riguarda le incertezze calcolate con il metodo probabilistico allo script vengono passati
function y=calc_uTx(Vx,Vr,Tr,Vos,V,Rss,R,ubVx,ubVr,ubTr,ubVos,ubV,ubRss,ubR)
%calcolo dell'incertezze composte di Tx teorico con metodo statistico
n=length(Vx);
corr= [ 1 1 0 1 1 1 1;
1 1 0 1 1 1 1;
0 0 1 0 0 0 0;
27
1 1 0 1 1 1 1;
1 1 0 1 1 1 1;
1 1 0 1 1 1 1;
1 1 0 1 1 1 1];
Vrm=mean(Vr);
Trm=mean(Tr);
Vosm=mean(Vos);
Vm=mean(V);
Rssm=mean(Rss);
Rm=mean(R);
for i=1:n
Vxm=mean(Vx(i,:));
ub=[ubVx(i) ubVr ubTr ubVos ubV ubRss ubR];
der=0;
der(1)=Trm/(-Vrm+Vosm+Rm*(Vm-Vosm)/Rssm); %derVx
der(2)=(Vxm-Vosm-Rm*(Vm-Vosm)/Rssm)*Trm/(-Vrm+Vosm+Rm*(Vm-Vosm)/Rssm)^2; %derVr
der(3)=(Vxm-Vosm-Rm*(Vm-Vosm)/Rssm)/(-Vrm+Vosm+Rm*(Vm-Vosm)/Rssm); %derTr
der(4)=-(Rssm-Rm)*Trm*Rssm*(-Vrm+Vxm)/(-Vrm*Rssm+Vosm*Rssm+Rm*Vm-Rm*Vosm)^2; %derVos
der(5)=-Rm*Trm*Rssm*(-Vrm+Vxm)/(-Vrm*Rssm+Vosm*Rssm+Rm*Vm-Rm*Vosm)^2; %derV
der(6)=-Rm*(-Vm+Vosm)*Trm*(-Vrm+Vxm)/(-Vrm*Rssm+Vosm*Rssm+Rm*Vm-Rm*Vosm)^2; %derRss
der(7)=(-Vm+Vosm)*Trm*Rssm*(-Vrm+Vxm)/(-Vrm*Rssm+Vosm*Rssm+Rm*Vm-Rm*Vosm)^2; %derR
der=der'*der;
ua2=cov(([Vx(i,:)', Vr', Tr', Vos', V', Rss', R']))/n;
uaTx(i)=(sum(sum(der.*ua2)))^0.5;
ubTx(i)=(sum(sum(((ub'*ub).*der).*corr)))^0.5;
ucTx(i)=(uaTx(i)^2+ubTx(i)^2)^0.5;
end
y=[uaTx; ubTx; ucTx];
end
Alla funzione calc_uTx vengono passati come parametri tutti i vettori contenenti le misure e le relative
incertezze, le misure delle grandezze sono tutte dei vettori con 50 elementi e le relative incertezze sono
dei numeri singoli, ad eccezione di Vx che è una matrice 50 × 50 e la sua incertezza è un vettore di
50 elementi. La funzione restituisce una matrice 3 × 50 con i valori delle incertezze di tipo A, B e
composta. Notare che la matrice delle covarianze è stata ulteriormente divasa per n in quanto la
funzione cov() di matlab calcola le covarianze e non le covarianze campionarie che sono invece quelle
tensioni e resistenze, infatti queste pur essendo grandezze siche diverse sono state misurate con lo
stesso strumento nelle stesse condizioni ambientali quindi è logico porre i coecienti di correlazione
28
pari ad uno, invece il tempo Tr si è supposto scorrelato dalle altre grandeze misurate.
Lo script per il calcolo delle incertezze di Tx misurato è molto più semplice, riceve in ingresso la
matrice 50 × 50 dei valori misurati, il vettore delle incertezze di tipo B e calcola le incertezze di tipo
uaTx(i)=var(Tx(i,:))^0.5;
ubTx(i)=Tx_ub(i);
ucTx(i)=(uaTx(i)^2+ubTx(i)^2)^0.5;
end
y=[uaTx; ubTx; ucTx];
end
figure
errorbar (Vxm, Txm_mes, 2*Tx_u_mes(3,:));
hold all
errorbar (Vxm, Txm_calc, 2*Tx_u_calc(3,:));
figure;
plot (Vxm, Tx_u_mes(1,:));
hold all
plot (Vxm, Tx_u_mes(2,:));
plot (Vxm, Tx_u_mes(3,:));
figure;
plot (Vxm, Tx_u_calc(1,:));
hold all
plot (Vxm, Tx_u_calc(2,:));
plot (Vxm, Tx_u_calc(3,:));
29
5 Risultati e Conclusioni
I valori medi dei parametri di interesse sono:
Tr 20.08 0.015 ms
R 218.98 0.018 kΩ
V 0.638 0.002 mV
Se l'analisi teorica è corretta i valori di Tx calcolati e quelli misurati dovrebbero essere fra loro
compatibili. Tracciando la media dei valori di Tx misurati e calcolati per diversi valori di Vx si ottiene
il seguente graco.
Come si può notare, la due rette sono quasi sovrapposte. E' comunque possibile tracciare lo stesso
graco con l'ampiezza dell'incertezza ad ogni vaolre di Tx , per incertezza si intende quella tipo C sia
per quanto riguarda il valore del tempo misurato sia per quello calcolato analiticamente.
30
Figura 15: Tx Errorbar - incertezze statistiche
Anche se dal graco risulta dicile da vedere le misure di Tx sono compatibili, infatti due misure
Per tracciare il graco sono state usate i valori dell'incertezza estesa al 95% vale a dire che sono state
Al ne di confrontare la composizione delle varie incertezze è possibile tracciare un graco che ne
rappresenti tutte le tipologie (tipo A, B e C) in funzione della tensione Vx sia per il valore del tempo
Nell'incertezza composta del Tx misurato mediante oscilloscopio, si possono notare delle variazioni
a picco. La loro natura, come si evince dal plottaggio dei due dierenti tipi di incertezza (gaco
successivo) è dovuta alle incertezze di tipo A di Tx e dunque alla varianza campionaria delle misure.
31
Figura 16: incertezze di tipo A, B e C sul Tx misurato
Se la varianza è elevata signica che i dati sono dispersi, infatti se consideriamo per esempio il
picco presente intorno ai 7 V possiamo gracare l'istogramma delle misure di Tx eettuate tramite
l'oscilloscopio.
Si vede come per questo valore di Tx l'oscilloscopio abbia letto due valori diversi, probabilmente il
valore reale si trovava nel mezzo di questi due ma l'oscilloscopio non aveva una risoluzione sucien-
temente elevata per misurarlo, questo ha determinato una varianza relativamente elevata per il Tx in
questione.
32
Valutiamo inoltre anche la composizione dell'incertezza calcolata con il modello probabilistico di
Tx .
Anche qui vediamo come la parte preponderante dell'incertezza nale sia data da quella di tipo B,
mentre l'incertezza di tipo A ha un andamento casuale pressochè costante su tutto il range di valori.
Inoltre per ambedue le incertezze (tempo misurato e calcolato) le incertezze estese al 95% sono, per
valori di Vx di 6-8 V, dell'ordine di 3 · 10−5 s, le incerteze relative sono invece circa pari al 0.17%.
subito conto che esse sono molto simili. Ci si può chiedere quale sia il fattore che accomuna queste
due incertezze; La misura di Tx è stata eettuate tramite oscilloscopio invece il calcolo di Tx è stato
eettuato tramite la misura di diversi parametri, tensioni resistenze e tempo, anche qui la misura del
tempo, in questo caso Tr , è stata eettuata tramite lo stesso oscilloscopio; a questo punto, tenendo
conto del fatto che il multimetro utilizzato per la misura degli altri parametri era molto accurato,
si può pensare che l'incertezza composta del Tx calcolato sia quasi totalmente generata a partire
dell'incertezza su Tr .
Nel caso in cui l'unico parametro aetto da incertezza nella formula di Tx fosse Tr , e trascurando
anche per questo parametro l'incertezza di tipo A, avremmo che l'incertezza su Tx è data dalla formula:
∂Tx
u(TX ) =
· ub (Tr )
∂Tr
tracciando quindi il graco di questa grandezza in funzione di Vx e confrontandola con l'incertezza di
33
Figura 19: incertezza su Tx attribuita a ub (Tr )
Come si può vedere dal graco, le deduzioni fatte sono valide. L'incertezza di Tx è quasi totalmente
da attribuire all'incertezza di Tr cioè all'incertezza sulla misura del periodo dell'oscilloscopio. In eetti
l'oscilloscopio è uno strumento molto utile e versatile ma che poco si adatta a misure molto precise, le
rete, infatti con un tempo Tr pari a 20 ms il circuito dovrebbe essere immune a tutte le componenti
Per vericare questa caratteristica è suciente porre in ingresso al doppia rampa un segnale con-
tinuo sovrapposto a segnali sinusoidali di diversa frequenza ed eseguire un certo numero di misure,
ovviamente per qualsiasi frequenza scelta mediando le misure si annulla l'eetto della componente
variabile ma la varianza, o la deviazione standard, sarà tanto più piccola quanto più la frequenza si
I parametri che sono stati utilizzati per eettuare le misurazioni sono: segnale in coontinua pari a
34
Figura 20: Reiezione del rumore
Il primo graco rappresenta la reiezione normale del circuito riferito ad un campione di 110 misure
distribuito su un range che va da 10 a 200 Hz mentre nel secondo le misurazioni sono 180 spalmate
su un range che va da 10 a 1000 Hz. Il termine RN sull'asse delle ordinate dei primi due graci è
stato già denito nei cenni teorici e rappresenta l'inverso dell'ampiezza della tensione media di rumore
normalizzato ad ampiezza unitaria ed espresso in dB. La tensione media di rumore l'abbiamo ottenuta
eseguendo misure ripetute, attraverso l'oscilloscopio, del periodo Tx e calcolando le relative deviazioni
standard. Da queste ultime ci siamo poi ricavati le deviazioni riferite a Vx attraverso la seguente
formula:
Vref
dev Vx = · dev Tx
Tr
e in ultimo normalizzato, ottenendo:
RN = 20log(V0 /dev Vx )
35
Come si può notare dai graci il circuito reietta il rumore prodotto dai disturbi con frequenze
multiple di 50 Hz. Dai graci si nota anche uno strano comportamento della reiezione per frequenze
che si trovano nell'intorno dei 75 Hz. In questo punto dovrebbe essere presente un minimo della
funzione di reiezione perchè ci si trova proprio a metà tra due frequenze di reiezioni adiacenti.
Come si era spiegato nei cenni teorici la tensione media di un rumore sinusoidale segue un anda-
36
A Cenni teorici sul calcolo delle incertezze
L'incertezza può essere generalmente costituita da componenti sistematiche o da componenti casuali.
Incertezza di tipo A
La natura casuale di certe variazioni sul valore misurato, come può essere ad esempio il contributo del
rumore termico, contraddistingue quella che viene chiamata Incertezza di tipo A . Intuitivamente,
considerando che l'apporto alle variazioni del valore misurato sono a valore medio nullo, si può pensare
di ridurre tale contributo eettuando un certo numero di misurazioni e valutandone la media campi-
onaria; di conseguenza anche l'errore casuale sulla misura tenderà a ridursi di un fattore pari al numero
di misurazioni eettuate.
determinata quantità di risultati di misura ottenuti con prove ripetute. Il Teorema del Limite Centrale
applicato a questo caso aerma che se il numero di misurazioni tende ad innito allora il prolo delle
misurazioni tenderà a coincidere con quello di una curva gaussiana che si attesta attorno ad un valore
medio µ e che è caratterizzata da uno scarto quadratico medio pari a σ. Si dimostra inoltre che, nel
caso di un elevato ma limitato numero di campioni (misure), la migliore approssimazione del valore
N
1 X
µ = E[x] = xi
N i=1
N
1 X
σ 2 = E[(x − µ)2 ] = (xi − µ)2
N (N − 1) i=1
Valutare l'incertezza di tipo A di una misura, equivale a determinare dunque l'approssimazione migliore
Incertezza di tipo B
L'incertezza di misura, tuttavia, è aetta anche da un quantità di incertezze sistematiche non causali
che si presentano immancabilmente con lo stesso segno nei confronti della misura; l'eliminazione at-
che, a tutti gli eetti, non tenderà a diminuire con l'aumentare delle misurazioni ma invece si presen-
terà sempre con la stessa quantità. L'incertezza di tipo B, come anche l'incertezza dello strumento,
37
viene determinata ipotizzando la sua funzione di distribuzione (valutata sulla base dell'esperienza dal
costruttore) a priori e caratterizzandola con la sua deviazione standard. L'incertezza cosi ottenuta
Incertezza estesa
Facendo l'esempio di una distribuzione normale, il valore di incertezza corrispondente alla stima di
σ è di fatto relativo ad un intervallo di condenza pari a circa 68, 4%. In altre parole, se considero
una misura annessa un'incertezza determinata come solo scarto quadratico medio (radice quadrata
della varianza campionaria delle medie campionarie - A) o come solo scarto quadratico medio della
distribuzione ipotizzata (B), ho il 68.4% di possibilità che il valore vero rientri nell'intervallo da me
di condenza buono: in genere esso si attesta sul 95% o sul99%. Per permettere ciò, è necessario
U (x) = k · u(x)
opportuno ricorrere ad un fattore di copertura diverso. Dalla teoria, infatti, è risaputo che se il numero
in funzione del numero di campioni e se tale numero tende ad innito allora tale distribuzione tende
alla gaussiana. Esistono delle tabelle che forniscono, correggendolo, il valore del fattore di copertura
incertezza di tipo A e di incertezza di tipo B in un'unica incertezza che viene denita di tipo C:
q
uc (x) = u2a (x) + u2b (x)
Essa si ottiene calcolando la radice quadrata della somma delle varianze e delle covarianze delle rispet-
tive variabili, pesate in funzione della variazioni del risultato del modello di misura al variare delle
stesse.
esprimere tale grandezza come funzione matematica di altre grandezze, le quali, invece, sono accessibili
38
e misurabili. La funzione matematica suddetta prende il nome di modello della misura . Mediante
tale relazione, ad ogni valore delle misure in ingresso è possibile associare una misura della grandezza
non misurabile: per sua natura, questo genere di misurazione prende il nome di misura indiretta .
Similmente, è possibile associare ad ogni misura indiretta una sua incertezza dove essa è il risultato
Per giungere alla formula di propagazione delle incertezze dirette è necessario approssimare innanz-
itutto la funzione matematica con il suo sviluppo di Taylor nell'intorno di riposo troncato al primo
ordine:
N
X ∂f
y'y+ (xi − xi )
i=1
∂xi x
La varianza del modello di misura corrisponde all'aspettazione del quadrato della dierenza tra la
X 2
2 2 ∂f N
σ (y) = E[(y − y) ] = E[ (xi − xi )i=1 ]
∂xi x
Il troncamento al primo ordine dello sviluppo in serie di Taylor della funzione matematica è formato
da una sommatoria i cui elementi sono moltiplicati per coecienti costanti originati dalla variazione
della funzione matematica rispetto ad ognuna variabile, calcolata nel punto medio. I termini derivanti
dall'elevazione al quadrato di tale sommatoria si possono suddividere in elementi derivati dai prodotti
con loro stessi e elementi derivati dai prodotti misti. L'Aspettazione di questo risultato fornisce la
varianza la cui radice quadrata rappresenta l'incertezza propagata. Per la linearità dell'aspettazione, i
coecienti divengono semplici costanti moltiplicative delle varianze e delle covarianze di ogni variabile
aleatoria:
n 2 n−1 n
2
X ∂y X X ∂y ∂y
u (y) ' u(xi ) + 2 u(xi , xj )
i=1
∂xi x i=1 j=i+1
∂xi x ∂xj x
Ne consegue che è possibile esprimere la varianza propagata come l'estrazione della radice quadrata
delle varianze e delle covarianze delle varie variabili aleatorie pesate con le variazioni della funzione
matematica rispetto alle relative variabili. Dal momento che, come già detto, la varianza campionaria
delle medie campionarie è la migliore stima della varianza (e la covarianza campionaria è la migliore
stima della covarianza), allora, dato un limitato numero di campioni, è ragionevole approssimare le
varianze e covarianze con le relative stime, e dunque con le relative incertezze. Questo risultato è valido
Da notare che qualora le incertezze non fossero più trascurabili negli ordini superiori allora tutto il
39
Modello Deterministico
Nonostante non sia un modello previsto dal GUM, il modello deterministico deve la sua diusione alla
facilità di applicazione per ottenere una stima, seppur molto grossolana, dell'incertezza propagata in
gioco. Per introdurre il modello deterministico è necessario fare inizialmente una premessa pratica.
Le incertezze sulle misure di tempo di un oscilloscopio sono fornite dal costruttore nei relativi
datasheets. Tali incertezze sono in genere considerate incertezze di tipo B; infatti queste formule pre-
determinate per il calcolo dell'incertezza vengono valutate dal costruttore ipotizzando la distribuzione
delle relative misure a priori. I casi più frequenti di rappresentazione sono quelli che implicano dis-
Nel primo caso le formule delle incertezze permettono di calcolare lo scarto quadratico medio ad un
certo intervallo di condenza. Nel secondo caso, invece, sono rappresentate come valore massimo di
incertezza e non sono accompagnate da nessun intervallo di condenza ai quali fanno riferimento.
Mentre nel primo caso l'incertezza calcolata è esattamente l'incertezza di tipo B, nel secondo caso
questo non è vero. L'incertezza di tipo B del secondo caso è calcolabile come la radice quadrata della
varianza di una variabile aleatoria che si distribuisce in maniera uniforme nell'intervallo indicato dal
valore massimo calcolato. Si dimostra che nel secondo caso l'incertezza di tipo B a cui fa capo è pari
il valore massimo (inteso esattamente come è stato esposto nell'esempio precedente) dell'incertezza di
ogni misura,e corrisponde ad ipotizzare, nel metodo probabilistico, tutti i coecienti di correlazione
in maniera tale che si verichi il massimo aumento dell'incertezza sulla grandezza in questione.
y = f (x1 , x2 , ..., xn )
n
X ∂y
δy = ∂xi δxi
i=1
doveδxi è lo scarto associata alla grandezza xi , dalla formula si può vedere come le derivate parziali
siano tutte prese in valore assoluto, quindi inevitabilmente ogni incertezza δxi va ad aumentare δy .
Modello Probabilistico
L'ISO-GUM ritiene che il modello da adottare in campo metrologico sia quello che si fa forte di
un'incertezza determinata mediante metodo probabilistico e che valuta l'incertezza come la varianza
sarebbe impossibile determinarne le covarianze in quanto, non avendo a disposizione alcun vettore su
cui operare, il problema risulta non essere ben posto. Ne consegue che, per propagare un'incertezza
40
di tipo B, è ancora possibile operare mediante il metodo probabilistico (perché a tutti gli eetti essa
è stata determinata dal costruttore dello strumento mediante approccio probabilistico), ma dobbiamo
denito come il rapporto tra la covarianza di due variabili aleatorie e il prodotto tra le rispettive in-
certezze). La domanda da porsi per la stima del coeciente di correlazione è: quanto sono correlate
fra loro le misure delle due grandezze? Se per esmpio le due grandezze in questione sono ambedue
delle tensioni misurate con lo stesso strumento, in intervalli di tempo vicini ed in condizioni ambientali
pressochè uguali è logico aspettarsi una coeciente di correlazione unitario, contrariamente se le due
grandezze sono una tensione e una frequenza misurate con strumenti diversi il coeciente di corre-
l'incertezza sulla variabile misurata per via indiretta, a seconda della struttura dell'espressione per il
calcolo di tale grandezza assumendo un coeciente di correlazione unitario fra due grandezze misura-
bili è possibile che l'incertezza aumenti se il prodotto delle derivate parziali è positivo diminuisca se il
prodotto è negativo, considerazioni simili ma opposte vanno fatte per coecienti di correlazione pari
n 2 n−1 n
2
X ∂y X X ∂y ∂y
u (y) = ub (xi ) + 2 ub (xi ) · ub (xk ) · r(xi , xk )
i=1
∂xi i=1
∂xi ∂xk
k=i+1
a disposizione i vettori delle misure non vi sono per quanto riuarda il calcolo delle varianze e covarianze
n 2 n−1 n
X ∂y X X ∂y ∂y
u2a (y) = ua (xi ) + 2 ua (xi , xj ) (1)
i=1
∂xi i=1 j=i+1
∂xi ∂xj
dove con ua (xi ) si intende la varianza campionaria della grandezza xi , e con ua (xi , xj ) la covarianza
M
1 X
ua (xi , xj ) = (xij − xj )(xik − xk )
M (M − 1) i=1
41
la 1 può essere riscritta in una forma più compatta, basta introdurre la matrice delle covarianze di y:
var(x1 ) cov(x1 , x2 ) · · · cov(x1 , xn ) u2a (x1 ) ua (x1 , x2 ) · · · ua (x1 , xn )
.. . .. .
cov(x , x ) . . u (x , x ) . .
. .
2 1 a 2 1
cov(y) = =
. .. . . .. .
. . . . . .
. . . .
cov(xn , x1 ) ··· ··· var(xn ) ua (xn , x1 ) ··· ··· u2a (xn )2
la 1 risulta uguale a:
n
X ∂y ∂y
u2a (y) = (cov(y))i,j ·
i,j=1
∂xi ∂xj
di tipo B che alla ne devono essere riunite e trovare quindi l'incertezza composta mediante la formula:
q
uc (y) = u2a (y) + u2b (y)
42
B Amplicatore Operazionale e circuiti di misura
Amplicatore Operazionale
Resistenze di ingresso viste dal morsetto invertente e non invertente innite, come conseguenza
Amplicazione dierenziale innita, conseguenza di questo è che per valori niti di vo è necessario
Amplicazione di modo comune nulla, quindi CMRR (common mode rejection ratio ) innito
Reiezione alle variazioni delle tensioni di alimentazione innita, P SRR = ∞ (Power supply
rejection ratio )
Intervallo di variazione della tensione di uscita innito (cioè non limitato tra −VEE < vo < VCC )
Slew rate innito, ne consegue che deve essere innita anche la corrente erogabile dal morsetto
di uscita
43
Assumere valide queste ipotesi può essere utile quando si deve fare una prima analisi di circuito,
successivamente però deve essere fatta una analisi più dettagliata tenendo conto almeno in parte ai
parametri reali degli amplicatori operazionali; in particolare bisogna tener conto di:
Tensione di oset in ingresso diversa da zero, in particolar modo per amplicatori operazionali
Intervallo di variazione della tensione di uscita nito, nel caso di amplicatori rail to rail è
limitato dal valore delle tensioni di alimentazione, negli amplicatori non rail to rail, invece è
ulteriormente minore.
Valore dell'amplicazione dierenziale non innito anche se comunque solitamente molto ele-
vato, in particolare bisogna dire che l'amplicazione diventa funzione della frequenza, con una
A0
Ad (ω) =
1 + τp jω
quindi se in ingresso si ha segnali a frequenze relativamente elevate bisogna tener conto di una
eventuale distorsione del segnale in uscita, visto che le armoniche di ordine superiore potrebbero
venire attenuate.
Slew rate non innito, il morsetto di uscita non può quindi erogare una corrente innita.
Amplicazione di modo comune non nulla, quindi con un'amplicazione dierenziale anch'essa
Insieme a queste non idealità ve ne sono altre ma nella maggior parte dei casi sono trascurabili, vengono
Resistenze di ingresso non innite, ma comunque di valore molto elvato in particolar modo per
Resistenza di uscita non nulla, ma comunque nella maggior parte dei casi di valore trascurabile
PSRR non innito, in particolar modo in maniera analoga al CMRR diminuisce all'aumentare
della frequenza.
ideale e quello più complesso del modello reale. Un'importantissima semplicazione che è possibile
44
attuare per ridurre i parametri di descrizione di un amplicatore operazionale reale e nello stesso mo-
mento fare riferimento ad un modello più preciso di quello ideale, è quella che suppone che buona
parte delle armoniche del segnale in ingresso rientrino all'interno della banda dei circuiti che utilizzano
operazionali. I segnali che si svilupperanno nel nostro circuito saranno segnali tipicamente caratteriz-
zati da frequenze basse minori di 50 Hz. Tuttavia è opportuno ricordare come questi segnali siano in
genere onde triangolari o onde quadre, ne consegue che per una loro precisa descrizione si necessita di
una banda molto maggiore, idealmente innita, ma con buona approssimazione già alla terza-quinta
armonicha si tiene conto di una percentuale considerevole dell'energia totale del segnale.
quenza, che il suo valore sia molto elevato e che l'amplicazione di modo comune sia nulla, la prima
ipotesi è giusticata dal fatto che i segnali del circuito sono comunque a frequenza relativamente basse,
la seconda e la terza sono state fatte sulla base delle dicoltà incontrate nel tentativo di calcolare
una funzione di trasferimento per l'integratore che tenesse conto anche di questa non idealità oltre alle
altre, è stato allora deciso di trascurare questa non idealità e di tener conto delle altre.
Per quanto riguarda le correnti abbiamo ritenuto che, in funzione del tipo di circuito quale è
quello del voltmetro a doppia rampa, la conoscenza della corrente I+ fosse superua ai ni della
determinazione della formula nale, infatti nel circuito integratore il morsetto positivo è collegato a
massa.
non idealità degli amplicatori operazionali. Come è già stato introdotto nelle sezioni precedenti, in-
fatti, sia il funzionamento del circuito sia l'analisi teorica dello stesso prendono in considerazione le
grandezze rappresentanti le non-idealità dei componenti che li caratterizzano. Tra i vari dispositivi
del circuito che possono introdurre delle non idealità, un ruolo fondamentale è svolto dagli ampli-
notevoli complicazioni nella risoluzione del circuito. Concluso lo studio degli amplicatori operazion-
ali ci concentreremo ora sui circuiti realizzati per pervenire al calcolo di alcuni parametri di nostro
interesse.
45
Circuiti di misura
Sono stati realizzati i seguenti circuiti di misura per la determinazione di Vos e della I− dell'amplica-
Il circuito in gura riproduce in uscita la tensione Vos a frequenza nulla qualora valgano le ipotesi fatte
Vo = Ad (Vos − Vo )
Ad
Vos = Vo
Ad + 1
Si nota subito che per Ad tendente ad innito, la misura di Vo riproduce esattamente quella di Vos .
Da notare il fatto che il circuito esterno non comporta alcun componente aggiuntivo; quindi la misura
46
Circuito di misura di I−
La corrente che scorre in Rss è pari alla corrente I− . In virtù del corto-circuito virtuale, le tensioni V−
e V+ sono uguali e pari a Vos . La caduta di potenziale su Rss , con I− entrante, a cui è sommata Vos è
(Vo − Vos )
I− =
Rss
Come già preannunciato l'introduzione di Rss (peraltro necessaria a convertire I− in una tensione
misurabile) e anche quella di Vos nella formula che fornisce la I− introducono delle incertezze che
vanno propagate al ne di determinare l'incertezza associata ad I− . A questo scopo verranno valutate
47
C Componentistica
ADG419
L' ADG419 è un interruttore SPDT (Single pole
pazione di potenza , un alta velocità di commutazione, una bassa resistività della connessione che
collega D ad uno dei due segnali S1 S2 e delle basse correnti di perdita. Il processo LC 2 M OS è princi-
palmente quello CM OS con l'aggiunta di alcune caratteristiche del processo bipolare, questo permette
di combinare i pregi delle due tecnologie (a scapito dei costi di fabbricazione) ottenendo quindi nel
singolo chip sia bassa potenza e grande integrabilità e sia alta accuratezza e basso rumore.
L' ADG419 ha una bassa resistenza di connessione su tutto il range di tensioni d'ingresso (come si
può vedere dal graco aanco), un'alta velocità di commutazione e una grande banda passante, questi
48
Logic Switch 1 Switch 2
0 ON OFF
1 OFF ON
Switch analogici
Range segnali analogici da −Vss a Vdd V
Ron 45 Ω [max]
Correnti di perdita
Is o ±5 nA[max]
Id o ±5 nA[max]
Il o ±5 nA[max]
Ingressi digitali
input high voltage Vinh 2.4 V [min]
input low voltage Vinl 0.8 V [max]
Potenza richiesta
Iss 2.5 µA [max]
Idd 2.5 µA [max]
Il 2.5 µA [max]
Correnti d'ingresso
corrente continua Is Id 30 mA
picco di corrente Is Id 100 mA
LM7805C
LM7805C è un regolatore di tensione a 5 V a tre terminali. Sebbene sia progettato principalmente come
regolatore di tensione ssa, tale dispositivo, attraverso una circuiteria esterna, può essere utilizzato
come componente per ottenere tensioni e correnti regolabili. Inoltre questo dispositivo è fornito di
molte protezioni, ha un limitatore di corrente che provvede a limitare i picchi di corrente in uscita a
valori sicuri, ha un limitatore interno di potenza che garantisce ai transistor di uscita di lavorare in area
protetta (SOA) e inne ha un circuito di protezione per il calore che lo disattiva quando le temperatura
diventa troppo alta da compromettere l'integrità del componente. Per un corretto funzionamento del
componente è necessario fornire una tensione di ingresso compresa tra i 7.5 V e i 20 V. La corrente che
assorbe il componente è al massimo di 8.5 mA, e può fornire correnti di uscita dell'ordine dell'Ampere
se gli viene applicato un dissipatore. Un altro punto di forza di questo componente è il fatto che non
49
NE555
L' NE555 è un circuito integrato che contiene un
assorbire o erogare più di 200 mA. L'NE555 in- Figura 27: circuiteria interna del NE555
stabilità termica di 0.005% per °C . Lo schema a blocchi del NE555 è riportato in g. 27.
Congurazione monostabile
In g. 28 è rappresentata la congurazione base
piedino di ingresso trigger (2) vale Vcc , entrambi Figura 28: congurazione monostabile del NE555
si conserverà. Anché l'uscita possa passare a livello logico alto è necessario che S riceva un 1, perché
questo avvenga devo avere che il potenziale di trigger (2) sia inferiore al potenziale sul partitore resisti-
vo, quindi dal momento che le 3 resistenze del partitore sono uguali, dobbiamo avere che la tensione di
trigger deve essere inferiore a 1/3 Vcc . In questo caso l'uscita nQ del Latch passa al livello logico basso
50
e il BJT interno al 555 si interdice, permettendo al condensatore di caricarsi. Nel frattempo terminato
l'impulso negativo sul piedino di trigger, necessario a far commutare l'uscita, avrò nuovamente un
segnale alto, quindi gli ingressi del latch valgono S=0R=0 il che signica che l'uscita si conserverà
allo stato attuale (livello logico alto). L'uscita rimane in questo stato nché all'ingresso del latch non
si avrà R = 1, ovvero nché la tensione threshold (6) non supererà la tensione del partitore che vale
2/3 Vcc (tale valore deriva dal fatto che le 3 resistenze del partitore sono uguali).
quanto essendo R=0 e OUT=1 sia se S=0 (memoria) e sia se S=1 (set) l'uscita rimane sempre a
1 e quindi non inuisce sulla carica del condensatore, in questo caso si dice che il monostabile è non
retriggerabile. Esiste anche una congurazione in cui il monostabile è retriggerabile, ovvero dando un
nuovo impulso di trigger quando l'uscita è alta, esso torna all'inizio del ciclo. Questa possibilità si
trigger (2) durante un ciclo di temporizzazione. Infatti applicando un impulso di reset (attivo basso),
scarico il condensatore portando l'uscita a 0 e quindi il segnale R a 0, è da notare che questa congu-
razione è quella che si ha all'equilibrio, quindi applicando ora un segnale basso al trigger porto S a 1
Calcoliamo ora la durata del ciclo di temporizzazione, abbiamo visto che il funzionamento è regolato
da un circuito di carica di tipo RC , sappiamo che la tensione sul condensatore inizialmente e circa
zero, quando l'uscita passa a 1 (istante t = 0), il condensatore cercherà di caricarsi al valore Vcc , ma
la sua carica terminerà quando raggiunge il valore 2/3 Vcc , che coincide anche con il momento in cui
la tensione di uscita ritorna al valore 0. Quindi la durata del ciclo di temporizzazione coincide con il
51
In un circuito RC a cui è stato applicato un ingresso a gradino la tensione sul condensatore varia con
la legge:
t
vc (t) = V0 1 − e− RC
e sapendo che la tensione nale sul condensatore vale 2/3 Vcc possiamo ricavare il tempo necessario
2 t
1 t
V0 = V0 1 − e− RC ⇒ = e− RC
3 3
da cui si ottiene:
t = RC ln(3) ∼
= 1.1RC
Si noti inoltre che poiché la tensione sul condensatore e la tensione di threshold (6) del comparatore
sono entrambe proporzionali alla tensione di alimentazione la durata del ciclo di temporizzazione è
TL084
IL TL084 è un integrato contenente 4 amplicatori operazionali, costituiti da un stadio di ingresso a
JFET ad alta tensione, che gli consente di avere un alta impedenza di ingresso, il resto del circuito
invece è costituito da transistor BJT, che consentono di ottenere delle ottime caratteristiche dinamiche.
52
min typ max unit
Vos 3 15 mV
Ios 5 200 pA
Ad 25 200 V /mV
CMRR 70 86 db
GPB 3 M Hz
Ri 1 TΩ
In quest'altro graco, g. 30, viene mostrato l'andamento in frequenza dell'amplicazione dif-
ferenziale Ad , questo graco è utile per rendersi conto di quanto valga il prodotto guadagno-banda e
per determinare approssimativamente dove si trova il polo del componente, in maniera tale da poter
LM358
LM358 è un integrato contenente 2 amplicatori operazionali ad alto guadagno, con un compensatore
di frequenza interno, progettati per lavorare con alimentazione singola su un ampio range di tensioni.
Sebbene questi operazionali siano ad alimentazione singola, la tensione di uscita può raggiungere anche
53
Elevato prodotto banda guadagno: 1.1 Mhz
Bassissima corrente assorbita da ogni operazionale quando l'uscita è scollegata (RL = ∞): 500
µA
Ampio intervallo della tensione di ingresso di modo comune (da 0 a Vcc − 1.5V )
Vos 1 3 mV
Ios 2 10 nA
Ad 50 100 V /mV
CMRR 70 85 db
GPB 1.1 M Hz
54
D Strumentazione e comunicazione
Strumentazione e protocollo GPIB
La strumentazione utilizzata in laboratorio è in grado di essere comandata mediante il protocollo di
utilizzato è il protocollo GPIB (General Purpose Interface Bus ) relativo allo standard IEEE 488.2 del
1992.
Il protocollo HP-IB nacque nel 1965 come convenzione di comunicazione per i sistemi di strumen-
tazioni HP. Tale protocollo si diuse e venne regolarizzato ucialmente dieci anni dopo il suo debutto
dall'istituto per la standardizzazione, divenendo IEEE 488. Negli anni successivi il protocollo subì
numerose revisioni quando evolvette nel 1992 nello standard IEEE 488.2. Un anno dopo, venne svilup-
pato lo standard IEEE 488.3 detto anche HS488 (National Instruments ) che, rispetto al predecessore,
era caratterizzato da una velocità di trasferimento dati notevolmente maggiore. Tuttavia, nonostante
lo sviluppo dello High Speed 488 nel 1993, lo standard 488.2 non venne abbandonato dal momento
che la BandWidth dell'HS-488 degenerava con l'aumentare del numero di strumenti che doveva ge-
stire. Di fatti, l'oscilloscopio Agilent 54622D utilizzato nel corso della prova, gestisce un protocollo di
Il protocollo GPIB (d'ora in poi si farà riferimento alla standardizzazione 488.2 del 1992) è un
protocollo di comunicazione parallela che raggiunge un valore di Data Transfer pari a 1 MB/s perme-
Le linee di HandShake trasferiscono messaggi sotto forma di byte in maniera asincrona tra gli
strumenti;
Le linee di Data Management governano il usso dei dati attraverso le Data Lines.
La struttura della comunicazione GPIB si realizza attribuendo a ogni strumento una o più tra tre
Con questa nomenclatura, un voltmetro nella rete può essere sia un Talker che un Listener. Il PC è
un Controller e un Listener.
55
L'interfacciamento di uno strumento mediante GPIB consiste nello stabilire una sorta di area di
comunicazione che permetta l'invio di comandi e di query e la ricezione di risposte, atte a congurare
Nel caso specico, l'interfacciamento vero e proprio consiste nell'astrazione dello strumento come
dell'apparecchiatura e in questo senso risulta essere uno strumento estremamente potente, essibile
e dinamico. Mediante le consuete funzioni di Matlab per la lettura e la scrittura formattata su le,
dunque, è possibile impartire comandi allo strumento e leggerne le eventuali risposte dal buer, qualora
siano stati istanziati ordini di query. Le funzioni utilizzate sono per l'appunto quelle di fprintf() e di
fscanf(), tipiche tra l'altro anche del linguaggio di programmazione C.
l'unico esempio che unisce una larghezza di Banda di 100MHz, 2 Canali Analogici e la possibilità di
Caratteristiche generali
sample rate masssimo 200 M Sa/s
profondità di memoria 4 MB (2 MB per canale)
Canale Verticale
Incertezza DC guadagno verticale [1] ±2.0 full scale
Incertezza DC oset verticale [2] < 200 mV /div : ±0.1 div ±1.0 mV ±0.5 valore di oset
Incertezza Verticale a singolo cursore ±([1] + [2] + 0.2 full scale ( 1/2 LSB))
Canale orizzontale
Range da 5 ns/div a 50 s/div
Risoluzione 25 ps
Incertezza δt a canale unico ±0.01 valore letto ±0.1 larghezza schermo ±40 ps
56
Trigger
Modalità Auto, Auto Level, Triggered (Normal), Single
venti di trigger selezionabili Edge (Fronte), Pattern, Pulse Width (Glitch), Duration
Il Trigger
Il trigger è sicuramente uno degli elementi più importanti di un oscilloscopio, sia esso di tipo digitale
oppure di tipo analogico. La funzione principale del trigger è essenzialmente quella di garantire un'op-
portuna visualizzazione del segnale in ingresso e questo viene reso possibile mediante la generazione di
di un segnale a rampa che per tutta la sua durata permette di spazzolare lo schermo riproducendovi
il segnale nell'opportuna nestra temporale determinata dalla rampa stessa. Il tempo di durata della
rampa è legata dunque alla porzione di segnale che voglio spazzolare sullo schermo. Tuttavia, nella
maggior parte dei casi questo tempo non è sucientemente grande da poter impressionare la retina
oculare ed è quindi necessario provvedere a rispazzolare lo schermo con la stessa porzione di segnale.
Questo è possibile solamente qualora si disponga di un elemento di memoria che abbia salvato i cam-
pioni precedenti o che il segnale stesso sia di tipo ripetitivo (non necessariamente periodico). Qualora
il segnale fosse periodico, infatti, gestendo opportunamente l'impulso di trigger in maniera tale da
sucientemente elevata da permettere l'impressionamento della retina oculare e dunque la visione del
segnale. La traccia visualizzata su schermo, per essere funzionale a misurazioni o valutazioni da parte
dell'utente, deve dunque possedere una certa stabilità nel tempo e spesso tale stabilità è dovuta alle
impostazioni del trigger. Tutti gli eetti di visualizzazione sullo schermo dipendono dal trigger e da
come e quando viene generato il suo impulso. La generazione dell'impulso di trigger ha luogo ogni qual
volta si verica un evento di trigger sul segnale desiderato. La visualizzazione della specica porzione
della modalità di trigger. Da ricordare il fatto che l'impulso di trigger parte subito dopo la conclusione
dell'evento di trigger.
Eventi di trigger
Livello di trigger: il principale strumento per la generazione dell'impulso di trigger è quello che
permette l'impostazione del livello di trigger quale soglia di un comparatore. Quanto il segnale
in ingresso varca tale soglia allora viene generato un impulso di trigger. I problemi principali
legati a questo genere di eventi è che il comparatore (seppur ad isteresi) è sensibile ai possibili
rumori sul segnale che in prossimità della soglia possono far partire l'impulso di trigger anche
quando ciò non è desiderato. Tutti gli oscilloscopi dispongono di questo genere di strumento.
Edge: si tratta di uno strumento che discrimina sul segnale in ingresso la presenza di un fronte
di salita o di discesa. L'impulso di trigger, dunque, può essere abilitato o meno da un evento di
trigger situato su ogni fronte del segnale, sia esso negativo o positivo. In genere questo tipo di
57
evento di trigger è disponibile sia sugli oscilloscopi analogici più moderni che sugli oscilloscopi
analogici digitali.
Glitch: rappresenta un evento di trigger particolare presente nei più moderni oscilloscopi digitali.
Questo genere di evento è stato ampiamente utilizzato nella prova in discussione, come si può
evincere dalle descrizioni degli script. In particolare il trigger a glitch riesce a generare un evento
di trigger ogni qual volta sul segnale si riscontrano dei glitch con caratteristiche particolari. Un
glitch del segnale è denito come una variazione improvvisa (un picco di tensione indesiderato)
caratterizzato da una certa durata temporale. Il trigger a glitch permette di impostare la polarità
di glitch sul quale triggerare (positivo-negativo) oltre a valutarne la durata temporale. Conve-
nientemente, un impulso di segnale, come anche un suo periodo, può essere interpretato come un
particolare glitch (in questo caso non inatteso) avente una certa polarità e un ben determinato
periodo. In virtù del fatto che l'impulso di trigger, e quindi la visualizzazione periodica, parte
solamente dopo la conclusione dell'evento di trigger allora avremo che per visualizzare l'impulso
positivo (che si suppone in genere seguire un impulso negativo di cui sappiamo che l'ampiezza
Modalità di trigger
ARM (SINGLE): il pulsante ARM dell'oscilloscopio (ARMed) viene sicamente premuto per
corrispondenza del solo successivo evento (in funzione delle sue impostazioni), e dunque comporta
una sola spazzolata dello schermo. Questa modalità è spesso utilizzata negli oscilloscopi digitali
(con memorizzazione dei campioni) per la visualizzazione dei transitori a cui il segnale è soggetto.
NORMAL: la modalità NORMal prevede la tipica spazzolatura (impulso di trigger) ogni qual
volta si presenta un evento di trigger. Se non avviene nessun evento di trigger allora non viene
di trigger non si verica entro un determinato intervallo temporale (in genere 25 ms). Per forme
d'onda a frequenza bassa (sotto i 40Hz) la modalità automatica (qualora ad esempio il trigger sia
un impulso di trigger tra due eventi (fronti). Questo comporta uno sfarfallamento dell'immagine,
Hold o
E' inne importante introdurre il concetto di Hold O. Sostanzialmente, il segnale di Hold O interno
all'oscilloscopio abilita o meno la generazione di impulsi di trigger associati agli eventi di trigger. L'Hold
O è dunque sicamente un segnale ad onda quadra che, quando positiva disabilita la generazione di
58
impulsi di trigger associati ad eventi di trigger. Il tempo di Hold O può dunque venire impostato
a piacere per evitare che, ad esempio, eventi di trigger non desiderati comportino spazzolamenti del
Pre-trigger e Post-trigger
Nei modelli di oscilloscopio più recenti sono presenti due sostegni fondamentali alla visualizzazione del
segnale che sono il pre trigger e il post trigger. In sostanza essi permettono di ragurare rispettivamente
Regolazione Vernier
La regolazione della base dei tempi avviene in genere attraverso quantità rappresentabili con mantissa
della base dei tempi. In particolare, per quanto esposto in precedenza, la modalità Vernier dell'Agilent
54622D interpone tra ogni quantità di mantissa 1 2 5, 25 ulteriori suddivisioni. Questa particolare
con grande cura la base dei tempi mediante il relativo comando. Da notare che la quantità che noi
eettivamente abbiamo utilizzato per impostare la base dei tempi è rappresentata da un numero oating
point. Questo valore viene in seguito adeguatamente approssimato al time/div con Vernier attivo più
vicino ed in seguito impostato come tale. La modalità Vernier è risultata essere dunque estremamente
utile per eettuare al meglio le misure di tempo sull'oscilloscopio permettendoci di regolare l'ampiezza
temporale dell'impulso a valori prossimi al massimo visualizzabile sullo schermo. Ricordiamo infatti
quanto misure realizzate in prossimità del fondo scala comportino un errore relativo decisamente minore
rispetto a misure eettuate a metà scala o ad inizio scala. In questo senso la regolazione Vernier è
stata fondamentale.
massimo. In sostanza, questo equivale ad aermare che il genere di distribuzione statistica supposta
dal costruttore per l'estrazione di questo parametro è di tipo uniforme. Il calcolo dell'incertezza di
tipo B, che verrà successivamente descritto terrà conto di questo fatto nel calcolo della varianza.
Multimetro 34401A
Il Multimetro 34401A possiede un display formato da 6½ digits permette di misurare tensioni e correnti
AC (True RMS) e DC, resistenze, frequenze, periodi e di valutare la continuità dei diodi. In partico-
lare ci interesseremo dei parametri principali riguardanti la misura di volt DC e di resistenza, quelli
59
Fondo scala Incertezza ad un anno dalla calibratura
100.00mV 0.0050+0.0035
1V 0.0040+0.0007
10V 0.0035+0.0005
100V 0.0045+0.0006
1000V 0.0045+0.0010
Resistenza di ingresso 10 M Ω
100 Ω 0.010+0.004
1kΩ 0.010+0.001
10kΩ 0.010+0.001
100kΩ 0.010+0.001
1M Ω 0.010+0.001
10M Ω 0.040+0.001
100M Ω 0.800+0.010
diamo ai capitoli che trattano dei cenni teorici, nonchè alle parti nelle quali questo concetto viene
Alimentatore E3631A
L'alimentatore suddetto dispone di due uscite, una dierenziale da −25/0/+25 (V) e una variabile tra
0/+6 (V), entrambe gestibili mediante protocollo GPIB. L'alimentatore, tra i tre utilizzati, è quello i
cui parametri sono meno importanti agli scopi di misura per cui non ci soermeremo sulle sue carat-
teristiche generali, e menchemeno sull'incertezza della tensione di uscita, in quanto, come è stato fatto
notare, sarà il multimetro a leggere la tensione in uscita dall'alimentatore (a valle dell'amplicatore non
invertente in ingresso) il quale propaga un'incertezza decisamente minore di quella che si otterrebbe
studiando l'alimentatore. In questo senso è suciente sapere che l'uscita dierenziale, che fornisce
l'alimentazione al circuito (+15 / −15) è stata anch'essa misurata mediante multimetro e che l'uscita
0 / +6 viene variata per simulare la variazione di tensione di ingresso del voltmetro. La massima
corrente di uscita fornita dall'alimentazione è decisamente superiore a qualsiasi corrente assorbibile dal
circuito.
60