La tecnologia dei sistemi di acquisizione dati si è sviluppata principalmente a due livelli, la componentistica e i sistemi veri e propri. La componentistica è ovviamente alla base della realizzazione dei sistemi di acquisizione dati, ma i recenti sviluppi dell'integrazione su silicio, in particolare della tecnologia System-on-Chip (SoC) e della tecnologia System-on-Package (SoP), ha caratterizzato questa come soluzione completa per innumerevoli applicazioni, soprattutto quelle a elevato livello di embedding. È la natura dell'applicazione che può far risultare più conveniente una soluzione rispetto a un'altra, mentre le problematiche implementative rimangono sostanzialmente le stesse: la catena di acquisizione, la calibrazione, le problematiche di digitalizzazione, le problematiche di isolamento, ecc.
La natura del sistema Daq
L'acquisizione dati, detta anche Daq (Data aquisition) è alla base delle applicazioni di misura e controllo, quindi oltre ad avere una componente di input, ha anche una componente di output. L'acquisizione dati implica la cattura di segnali e la conseguente digitalizzazione finalizzata alla memorizzazione, analisi e presentazione (se l'applicazione si limita alla misura), o l'elaborazione (se l'applicazione prevede il controllo). Il sistema Daq consiste dunque di alcuni sottosistemi fondamentali:
- i sensori (e gli attuatori)
- il sottosistema di condizionamento del segnale
- i dispositivi di digitalizzazione
- il software di base
I segnali e loro natura
I dati possono essere sia di tipo digitale, si di tipo analogico. I dati di natura digitale comunque derivano da eventuali processi di digitalizzazione eseguiti da altri sistemi in altri contesti diversi da quello dove opera il sistema Daq. Data la natura analogica dei dati oggetto dell'acquisizione, i sensori sono un elemento fondamentale della catena, da cui dipende in modo importante il grado di affidabilità e di precisione dell'applicazione basata sul Daq. I segnali analogici appartengono al mondo fisico (pressione, temperatura, intensità della luce, spostamento di oggetti, ecc.). I sensori convertono il segnale analogico in equivalente elettrico, allo scopo di renderlo compatibile con la natura elettrica del Daq. Ogni fenomeno fisico necessita di uno specifico sensore e in questa specificità sta molta della problematica dell'acquisizione dati. Rumore e distorsione dell'informazione oggetto della misura sono i principali problemi con cui si deve confrontare un sistema Daq.
Le informazioni oggetto della misura possono essere sia di tipo digitale, sia di tipo analogico. I dati di natura digitale possono derivare da processi di digitalizzazione eseguiti da sensori, oppure essere digitali nella loro natura nativa. I segnali analogici sono segnali continui sia nel tempo sia in ampiezza. Il sistema di acquisizione dati deve essere in grado di catturare, sottoforma digitale, quindi discreta, queste informazioni eseguendo in questa operazione un errore di misura più piccolo possibile. Ne consegue che i due principali requisiti di un sistema di acquisizione dati sono la precisione e la velocità di acquisizione dell'informazione stessa. A tale scopo, la teoria della discretizzazione nel tempo dei segnali continui, il Teorema di Nyquist per il campionamento e della discretizzazione in ampiezza dell'informazione, ovvero la quantizzazione, sono alla base del corretto funzionamento dei sistemi di acquisizione dati.
I segnali digitali, come quelli analogici, sono continui nel tempo, ma al contrario di questi sono discreti in ampiezza, in particolare sono a due livelli di ampiezza (segnali digitali binari). Il sistema di acquisizione dati, per catturare correttamente questi segnali deve comunque riferirsi al teorema del campionamento per la corretta misura nel tempo, mentre per quanto concerne la precisione in ampiezza, la problematica è meno stringente di quella relativa alla quantizzazione dei segnali continui, essendo quelli digitali già quantizzati.
Il condizionamento del segnale
Una buona trasduzione e una corretta digitalizzazione (campionamento e quantizzazione) non sono comunque in grado di garantire il corretto funzionamento di un'applicazione basata sull'acquisizione dati. Portare all'ingresso di un Daq direttamente il segnale catturato da un sensore, nella maggior parte dei casi non serve a nulla. In genere, i segnali catturati dai sensori sono molto piccoli (o molto grandi) in ampiezza e distorti, quindi necessitano di un trattamento preliminare detto "condizionamento". Il sottosistema di condizionamento del segnale consiste principalmente delle seguenti funzionalità:
- amplificazione (attenuazione)
- isolamento
- filtraggio
- linearizzazione
- multiplexing
Queste funzionalità, insieme a quella svolta dal trasduttore, determinano la cosiddetta catena di ingresso al sottosistema Daq dedicato alla digitalizzazione dell'informazione di segnale. In generale, la catena di condizionamento del segnale è finalizzata ad adattare nella forma migliore possibile il segnale oggetto della misura all'hardware Daq (analog I/O e digital I/O).
Il sottosistema Daq
Il cuore del sistema Daq è l'hardware che converte il segnale analogico in segnale digitale (e viceversa), cioè il cosiddetto sottosistema di conversione analogico/digitale (e digitale/analogico). Questo sottosistema determina le caratteristiche funzionali e applicative del sistema Daq, in particolare il numero di canali, la frequenza di campionamento, la risoluzione e la gamma di ampiezza dei segnali in ingresso. I sistemi Daq sono in grado di gestire contemporaneamente numerosi canali. La potenzialità applicativa del Daq dipende molto dal numero di canali gestibili direttamente dal suo hardware. Ma il numero di canali non è il solo parametro di riferimento. La natura elettrica di tali canali (single-ended o differenziali) e la modalità di gestione (multiplexed o simultanea) da parte del sottosistema di conversione analogico-digitale è un elemento altamente discriminante del campo di applicazione del sistema Daq.
La frequenza di campionamento del sistema Daq è comunque importante in quanto la tecnologia mixed-signal necessaria alla realizzazione di tali sottosistemi è fortemente legata a tale parametro. Frequenze di campionamento basse permettono di utilizzare sistemi di conversione analogico-digitali abbastanza economici e molto affidabili, mentre per le alte frequenze di campionamento il sottosistema di conversione analogico-digitale deve essere particolarmente sofisticato, quindi più costoso e più critico. La frequenza di campionamento è un parametro funzionale del Daq che può risultare critica anche in funzione della risoluzione richiesta dall'applicazione. Questa corrisponde al numero di bit che il convertitore analogico-digitale utilizza per rappresentare numericamente la misura dell'ampiezza del segnale. Alta velocità di acquisizione ed elevata risoluzione non sono contemporaneamente ottenibili a costi limitati e a bassa complessità del sistema Daq.
I componenti fondamentali di un sistema Daq
Due componenti sono fondamentali in un sistema di acquisizione dati, il convertitore analogico-digitale (A/D) e il convertitore digitale-analogico (D/A). Il convertitore A/D è il dispositivo di cattura dei dati di segnali. Questo si caratterizza con una frequenza massima di campionamento e una risoluzione nella quantizzazione dei campioni misurati. Questi due parametri caratterizzano l'ambito applicativo del convertitore. Banda e risoluzione delle applicazioni sono gli elementi che consentono allo sviluppatore di scegliere il convertitore A/D più adatto a soddisfare l'applicazione. Oltre a questi due parametri funzionali, lo sviluppatore deve anche valutare una serie di altri parametri funzionali dei convertitori A/D e D/A che caratterizzano i sistemi Daq. Questi sono le caratteristiche di non linearità (differenziale e integrale), i missing code, l'errore sul guadagno e l'errore di offset. La funzione di trasferimento del convertitore è infatti tutt'altro che ideale e va ben conosciuta per valutare quanto il sistema Daq potrà efficacemente supportare l'applicazione target.
L'importanza del software
L'acquisizione dati, pur essendo basata principalmente su risorse hardware come i convertitori A/D, il condizionamento del segnale e i sistemi di interfaccia verso i computer, necessitano della componente software per poter gestire in maniera appropriata ed efficiente tale processo. Questo supporto software è a maggior ragione richiesto ora che i sistemi Daq sono diventati molto complessi e assistiti da calcolatore. L'offerta di software di acquisizione dati viene sia dagli stessi produttori di sistemi Daq, sia da produttori di software che non producono sistemi Daq, ma che li supportano con il loro software di sviluppo.
Data la natura complessa delle applicazioni di acquisizione dati, l'offerta software è maggiormente orientata in termini di ambiente di sviluppo. Lo scopo è quello di mettere a disposizione dello sviluppatore una serie di funzionalità precostituite (driver, processi di calibrazione, processi di pre-elaborazione, ecc.) e un ambiente di modellazione a oggetti che consente di prototipare un'applicazione in tempi rapidi. National Instruments è uno dei produttori di sistemi Daq che offre, insieme al sistema di acquisizione dati, anche l'ambiente di sviluppo di tali applicazioni. NI ha puntato si dall'inizio sulla programmazione grafica, piuttosto che sulla tradizionale programmazione testuale. LabView di NI è infatti un linguaggio di programmazione grafica, quindi basato su icone e oggetti grafici che rappresentano la logica e i dati del processo di acquisizione dati e dell'eventuale conseguente controllo.
The Mathworks invece offre software per l'acquisizione dati riferendosi ad hardware Daq di terze parti come Data Translation, Advantech, Agilent, e la stessa National Instruments. In questo caso il software di acquisizione dati si sovrappone a quello offerto dagli stessi produttori di sistemi Daq, rendendo in tal modo le possibilità di scelta dello sviluppatore molto ampie.
Nella maggior parte dei casi non si tratta di una duplicazione ma di una integrazione. Nel caso di The Mathworks, l'abbinamento all'ambiente Matlab consente di fruire di un supporto alle applicazioni a forte contenuto algoritmo-matematico che diversamente lo sviluppatore dovrebbe svilupparsi in casa. The Mathworks rende infatti disponibile un toolbox (Data Acquisition Toolbox) che dispone delle funzionalità necessarie a configurare l'hardware Daq e a catturare i dati in modo che questi possano essere utilizzati all'interno dell'ambiente Matlab (per essere elaborati ed analizzati) o all'interno dell'ambiente Simulink (per modellazione e simulazione di applicazioni). Una terza soluzione software viene offerta dai produttori di compilatori o di software di sistema. Un esempio viene da Microsoft con Visual Studio Net (VS.Net), una piattaforma di sviluppo particolarmente orientata alle applicazioni Web capace di supportare anche applicazioni di acquisizione dati e controllo della strumentazione.
Hardware e software per l'acquisizione dati
I sistemi di acquisizione dati costituiscono una importante componente funzionale di applicazioni di rilievo come l'automazione industriale, il controllo di processo e la misura. Il recente sviluppo della tecnologia di elaborazione numerica del segnale ha reso ancora più importante la funzionalità dell'acquisizione dati, rendendola applicabile in maniera estensiva in altri ambiti come il medicale, l'automotive e anche il consumer. L'innovazione tecnologica per i sistemi Daq si è dimostrata particolarmente intensa negli ultimi anni, sia in termini di elettronica e microelettronica, sia in termini sistemistica e integrazione. La nuova generazione di convertitori analogici-digitali ad elevata integrazione ha consentito di realizzare sottosistemi Daq in modalità System-on-Chip (SoC) con cui è stato possibile ridurre costo e dimensioni delle applicazioni basate sull'acquisizione dati. Queste soluzioni a elevata integrazione hanno consentito di realizzare soluzioni di acquisizione dati intelligenti, base di numerose applicazione di acquisizione dati e controllo, come quelle distribuite e basate sul networking. In questo contesto di innovazione, un importante ruolo viene svolto dal software, sia di gestione del sistema di acquisizione dati, sia di sviluppo (ambienti di sviluppo e progettazione di applicazioni Daq).
L'acquisizione dati basata su Pc
Una importante quota dell'offerta di sistemi Daq utilizza la piattaforma Pc per offrire allo sviluppatore una soluzione molto flessibile per l'acquisizione dati, la misura e il controllo. National Instruments offre soluzioni Daq basate su Pc sia a livello hardware che a livello software. A tale scopo, nella sua offerta di soluzioni Daq, National Instruments sfrutta le potenzialità e l'evoluzione tecnologica della piattaforma Pc, sia in versione desktop, sia in versione portabile e hand-held. In particolare vengono supportati quasi tutti i bus di comunicazione (Pci, Pci Express, Pxi, Pcmcia, Usb, CompactFlash, Ethernet e FireWire) e i vari sistemi operativi disponibili (Windows, Linux, Mac OS X, Pocket PC/Windows CE e varie tipologie di sistemi operativi real-time (RTOS).
In questa offerta di Pc-based Daq, i sistemi Daq serie M per Usb rappresentano una interessante innovazione, considerando le prestazioni e la compattezza. In particolare, i dispositivi USB-6212 e USB-6216, si distinguono per le prestazioni elevate rispetto alle precedenti versioni per Usb. Il sampling-rate è particolarmente elevato (sedici canali a 400000 campionamenti/s per l'Adc e due canali da 250000 campionamenti al secondo per il Dac). Queste soluzioni, pur essendo destinate alle applicazioni portatili, di fatto mettono a disposizione prestazioni da sistemi fissi. Come ormai tutti i sistemi Daq, oltre all'I/O analogico, tali dispositivi rendono disponibili anche altre funzionalità digitali come l'I/O digitale (32 linee) e contatori digitali (a 32 bit). Per questi dispositivi Usb sono disponibili i driver software necessari (NI-Daqmx) e l'ambiente di sviluppo delle applicazioni, NI LabView Signal Express LE.
La disponibilità di un driver ottimizzato per questo dispositivo è molto importante, dato che i driver non specifici di Windows manifestano significative latenze nell'allocazione dello spazio di memorizzazione necessario in occorrenza di trasferimenti dati da e verso Usb. Il driver che National Instruments rende disponibile utilizza uno schema di preallocazione del buffer necessario. Il data rate ottenibile su Usb è quello che può essere ottenuto al massimo delle prestazioni (480 Mbit/s).
Il microcontrollore analogico per l'acquisizione dati
Analog Devices ha realizzato un microcontrollore analogico, l'ADuC832 MicroConverter che integra un sistema di acquisizione dati a 12 bit completamente su chip (SoC). Il sistema Daq dispone di 8 canali auto calibranti a 12 bit Adc (5 microsecondi) e due Adc a 12 bit. Il sistema di controllo è un microcontrollore standard 8052 che rende disponibile 62 kbyte di memoria flash programmabile in-circuit per la memorizzazione del codice applicativo e di 4 kbyte di memoria flash per i dati (oltre alla Sram interna al core da 2 kbyte).
Grazie a questo componente è possibile realizzare trasduttori intelligenti per applicazioni di acquisizione dati distribuita e remota. I convertitori sono auto calibranti mentre il firmware on-chip consente il supporto del download seriale e del debug remoto (via Uart).
La misura di temperatura su 48 canali
Data Translation offre numerose soluzioni per l'acquisizione dati, sia sotto forma di schede add-on che di moduli. Il sistema TEMPoint è particolarmente interessante per le caratteristiche di integrazione di sistema. Si tratta di un poderoso sistema di acquisizione dati costituito da 48 canali per la misura di temperatura e tensione. Il TEMPoint Modello 9871 accetta 48 termocoppie in ingresso. Il segnale di ogni termocoppia viene digitalizzato da un Adc a 24 bit. Dispone di un isolamento tra canale e canale di 1000 Volt. Può essere connesso al Pc via Usb (la versione LXI includerà il web server per il controllo dello strumento via browser). Data Translation rende disponibile anche un ambiente di sviluppo di tipo drag-and-drop per lo sviluppo di applicazioni di acquisizione dati, Measure Foundry.
L'ambiente Matlab e l'acquisizione dati
L'acquisizione dati è supportata in ambiente Matlab sia con toolbox specifici (Data Acquisition Toolbox), sia con il supporto di hardware Daq di terze parti.
Il Data Acquisition Toolbox per Matlab è un ambiente software per lo sviluppo di applicazioni di acquisizione dati che consente il controllo di ingressi e uscite analogiche e digitali I/O. Oltre a governare l'I/O analogico e digitale, il toolbox permette di governare anche la misura e l'interfaccia grafica necessaria per l'applicazione. Permette quindi di sviluppare software di elaborazione numerica del segnale (analisi e modifica) necessario alla realizzazione di una specifica applicazione di misura e controllo. Il toolbox supporta anche l'ambiente di simulazione Simulink, consentendo in tal modo la modellazione a blocchi dell'applicazione e la relativa simulazione real-time. Il Data Acquisition Toobox supporta hardware Daq di numerosi produttori, tra cui Agilent, National Instruments e Data Translation.
L'acquisizione dati su Usb
Agilent ha realizzato una serie di Daq per connessione Usb che rende disponibile un elevato rate di campionamento per canale, particolarmente utile quindi in applicazioni come l'analisi di transienti di segnale o l'acquisizione sincrona di dati in applicazioni sensibili alla fase del segnale. La serie U2500A esegue il campionamento simultaneo dei 4 canali di acquisizione a 14 e 16 bit di risoluzione. Il campionamento può essere fino a 2 Msample/s per canale per il modello U2351A a 14 bit, e a 250 Ksample/s e 500 Ksample/s per canale a 16 bit per i modelli U2541A e U2542A. I Daq Agilent sono supportati da The Mathworks in ambiente Matlab, ma sono anche supportati dal linguaggio grafico Vee per la programmazione di applicazioni di acquisizione dati. In questo ambiente di sviluppo sono inclusi senza costi aggiuntivi di licenza, Matlab e il Signal Processing Toolbox di The MathWorks.