La conversione di segnali permette di collegare sensori, elaboratori digitali e attuatori nei sistemi di misura e controllo. Il problema centrale è trasformare segnali elettrici analogici in numeri binari e, viceversa, generare segnali analogici a partire da dati digitali. ### Interfaccia tra analogico e digitale Nei sistemi di misura, molti sensori forniscono segnali elettrici analogici, in tensione o corrente, proporzionali alla grandezza fisica misurata. Per essere trattati da un computer, tali segnali devono essere convertiti in sequenze di numeri interi, solitamente rappresentati in base due. Questa operazione è svolta dal convertitore analogico-digitale, indicato come $A/D$ o ADC. ![[Pasted image 20260521143407.png]] L’operazione inversa è necessaria quando un elaboratore deve comandare attuatori, come motori, cilindri idraulici o pneumatici, che richiedono segnali analogici di pilotaggio. In questo caso si usa un convertitore digitale-analogico, indicato come $D/A$ o DAC. La conversione è quindi un passaggio essenziale nell’[[Sistemi di acquisizione ed elaborazione di segnali elettrici|acquisizione ed elaborazione dei segnali elettrici]]. #### Conversione digitale-analogica (D/A) La conversione $D/A$ consiste nel trasformare un numero binario in una grandezza elettrica proporzionale, tipicamente una **tensione**. Per un numero binario a tre bit $b_1 b_2 b_3$, la tensione corrispondente è: $ e_c=\left(b_3 \cdot 2^2+b_2 \cdot 2^1+b_1 \cdot 2^0\right)\cdot \Delta e $ dove $\Delta e$ è la risoluzione del convertitore, cioè il minimo incremento di tensione ottenibile. Essa corrisponde alla variazione prodotta dal bit meno significativo. Il massimo valore di tensione si ottiene quando tutti i bit valgono $1$: $ e_{\max}=\left(1\cdot 2^2+1\cdot 2^1+1\cdot 2^0\right)\cdot \Delta e $ Generalizzando a $n$ bit: $ e_{\max}=(2^n-1)\cdot \Delta e $ Da questa relazione si ricava che, a parità di fondo scala $e_{\max}$, aumentando il numero di bit diminuisce $\Delta e$: il convertitore distingue più livelli e fornisce un’uscita più fine. ##### Realizzazione con sommatore Un DAC può essere realizzato tramite un amplificatore operazionale configurato come sommatore pesato. Ogni bit $b_i$ comanda un interruttore che può trovarsi in due stati logici: aperto o chiuso. ![[330px-Convertitore_Digitale-Analogico_a_reti_pesate_a_4_bit.svg.png]] *Figura: Convertitore digitale analogico, <a href="https://commons.wikimedia.org/wiki/File:Convertitore_Digitale-Analogico_a_reti_pesate_a_4_bit.svg">Giacomo Alessandroni</a>, <a href="https://creativecommons.org/licenses/by-sa/4.0">CC BY-SA 4.0</a>, via Wikimedia Commons* La tensione in uscita vale: $ e_u=-e_{in}\sum_{i=0}^{n-1}b_i\frac{R_F}{R_i} $ La **risoluzione**, nel caso del bit meno significativo associato alla resistenza $R_0$, è: $ \Delta e=e_{in}\frac{R_F}{R_0} $ I principali parametri di un DAC sono: - risoluzione, legata al numero di bit; - range, cioè intervallo di tensione generabile; - velocità, cioè numero di conversioni al secondo. #### Conversione analogico-digitale (A/D) Un ADC trasforma un valore di tensione analogica $e_m(t_1)$ in un numero intero binario $k$. La tensione viene approssimata al livello discreto più vicino o a un livello appartenente all’intervallo di quantizzazione: $ e_m(t_1)\cong e_c=k\cdot \Delta e $ La risoluzione dell’ADC dipende dal fondo scala e dal numero di bit: $ \Delta e=\frac{e_{\max}}{2^n-1} $ Il processo introduce inevitabilmente un’approssimazione, detta errore di quantizzazione. Questo errore diminuisce all’aumentare del numero di bit, perché i livelli disponibili diventano più fitti. Il tema è direttamente collegato a [[Campionamento e quantizzazione|campionamento e quantizzazione]]. ##### ADC inseguitore Un possibile schema didattico è il convertitore analogico-digitale inseguitore. ![[Pasted image 20260521143732.png]] Il sistema confronta la tensione analogica in ingresso $e_m$ con una tensione interna $e_c$, generata da un DAC. L’uscita dell’amplificatore operazionale è: $ e_0=A_{ol}(e_m-e_c) $ Il circuito incrementa o decrementa il codice $k$ finché risulta verificata la condizione: $ (k-1)\cdot \Delta e \leq e_m \leq k\cdot \Delta e $ Quando la disuguaglianza è soddisfatta, il codice binario $k$ viene trasferito all’elaboratore nella forma: $k=b_{1} \cdot b_{2} \cdot b_{3} \cdot b_{4}$ ```mermaid graph TD A[Ingresso] --> B[Confronto] B --> C[Conta] C --> D[DAC interno] D --> B B --> E[Codice] ``` #### Tempo di campionamento e mantenimento Durante la conversione, il segnale $e_m$ deve rimanere praticamente costante. Per questo si impiega un circuito **sample and hold**, che campiona rapidamente la tensione e la mantiene stabile durante il tempo di conversione $t_c$. La stabilità è garantita da un condensatore e dalla costante di tempo: $ \tau=R\cdot C $ La velocità dell’ADC è espressa dalla frequenza di campionamento: $ F_c=\frac{1}{t_c} $ Una frequenza di campionamento elevata è necessaria per seguire segnali rapidamente variabili e costituisce un parametro essenziale nell'[[Analisi dei segnali digitali|analisi digitale dei segnali]]. ### Esempi ed esercizi Immagina un righello digitale che deve misurare una lunghezza continua. Se il righello ha tacche ogni $1\ \mathrm{mm}$, una lunghezza reale di $4.3\ \mathrm{mm}$ verrà registrata come appartenente all’intervallo tra $4$ e $5\ \mathrm{mm}$. Un ADC funziona allo stesso modo: non registra infiniti valori, ma sceglie uno tra livelli discreti. Aumentare il numero di bit equivale ad aggiungere più tacche al righello, rendendo la misura più precisa. ##### Domande di teoria - [ ] Qual è la differenza funzionale tra un convertitore $A/D$ e un convertitore $D/A$? - [ ] Che cosa rappresenta la risoluzione $\Delta e$ di un convertitore? - [ ] Qual è il ruolo del circuito sample and hold in un ADC? - [ ] Che cosa si intende per errore di quantizzazione? ##### Esercizi - [ ] Calcolare la risoluzione di un ADC a $8$ bit con fondo scala $e_{\max}=5\ \mathrm{V}$. - [ ] Determinare $e_{\max}$ di un DAC a $10$ bit con $\Delta e=2\ \mathrm{mV}$. - [ ] Un ADC ha $\Delta e=1\ \mathrm{V}$ e misura $e_m=4.3\ \mathrm{V}$. Individuare l’intervallo di quantizzazione corrispondente. - [ ] Un convertitore ha tempo di campionamento $t_c=0.5\ \mathrm{ms}$. Calcolare la frequenza di campionamento $F_c$. ### Collegamenti --- *Per risposte, ulteriori esercizi e approfondimenti consultare le risorse di riferimento.* > [!info]- Risorse > ![[!Misure meccaniche e termiche#Risorse#Bibliografia]] > ![[!Misure meccaniche e termiche#Risorse#Approfondimenti]] --- > [!danger] Info > ![[!Misure meccaniche e termiche#Collegamenti]]