1 / 23

Sviluppo e gestione di sistemi di misura basati su PC

Sviluppo e gestione di sistemi di misura basati su PC. Matteo Lancini - UniBS. Sviluppo e gestione di sistemi di misura basati su PC. L’acquisizione digitale I trasduttori La scheda DAQ Il task di acquisizione Il salvataggio dati L’analisi dei segnali Tempistiche e prestazioni

kynton
Télécharger la présentation

Sviluppo e gestione di sistemi di misura basati su PC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sviluppo e gestione di sistemi di misura basati su PC Matteo Lancini - UniBS

  2. Sviluppo e gestione di sistemi di misura basati su PC • L’acquisizione digitale • I trasduttori • La scheda DAQ • Il task di acquisizione • Il salvataggio dati • L’analisi dei segnali • Tempistiche e prestazioni • Problemi comuni • Buone pratiche di programmazione

  3. L’acquisizione digitale • Perché l’acquisizione digitale? • Offre notevoli vantaggi: • Bassa sensibilità al rumore elettrico • Alta accuratezza a basso costo • Elaborazione automatica possibile • Combinazione immediata di segnali diversi • Integrazione con sistemi di controllo • Trasmissione, registrazione e riproduzione dei segnali senza alcuna perdita di informazione • Ma esistono anche una serie di problemi da non sottovalutare che spesso sono trascurati…

  4. L’acquisizione digitale • Criticità intrinseche • nel dominio dell’ampiezza: • Risoluzione • Saturazione • nel dominio del tempo: • Aliasing • Leakage • Risoluzione spettrale • Problemi di implementazione • Prestazioni computazionali limitate: • Concorrenza tra salvataggio, acquisizione, analisi e visualizzazione • Memoria di massa limitata: • Risoluzione numerica • Numerosità di canali e campioni • Affidabilità del sistema: • Perdita di dati una grandezza continua è rappresentata da un valore discreto usiamo un PC come elemento della catena di misura

  5. Analisi preliminare • È importante non cominciare a sviluppare alla cieca, ma identificare fin da subito l’obiettivo finale del sistema di misura e la strumentazione a disposizione, in particolare: • L’oggetto della misura • I trasduttori da usare • La scheda DAQ da usare • La configurazione del campionamento • La durata ed il tipo di prova • Il dato finale da produrre come risultato

  6. I trasduttori • Informazioni da raccogliere: • Tipologia • condizionatori necessari • Segnale in uscita (tensione, corrente, impulsi…) • il numero ed il tipo di canali richiesti • Alimentazione (a ponte, raziometrico, fissa) • eventuali canali aggiuntivi e condizionatori • Sensibilità statica • riconversione del segnale • Banda passante • frequenza di campionamento • Campo di misura e campo di lettura • range dei canali di acquisizione • Collegamento (a 2, 3, 4, 6 fili..) • eventuali canali aggiuntivi e condizionatori

  7. La scheda DAQ • Caratteristiche dei canali: • Eventuale condizionatore integrato (IEPE, TC, RTD, ponte…) • Range di lettura e tipo (tensione, corrente…) • Connessione (pigtail, BNC, subD…) • Caratteristiche del convertitore: • Risoluzione digitale (numero di bit) • Frequenza di campionamento massima (globale o per canale) • Bus di collegamento (USB, RS232, WiFi, SCSI…) • Eventuale integrazione con altre schede in un unico rack (cDAQ, cRIO, PXI)

  8. Il task di acquisizione • Combina le impostazioni dei vari canali fisici e della sessione di acquisizione, fornendo una controparte software alla configurazione hardware dell’acquisizione. • Le modalità di configurazione del task dipendono fortemente dalle capacità dell’hardware e dal driver

  9. Il task di acquisizione • Sessione di acquisizione • Tipologia di campionamento • Durata dell’acquisizione • Frequenza di campionamento • Canali virtuali • Canale fisico associato • Configurazione di collegamento • Range di input • Scala di conversione • Eventuali impostazioni di condizionamento

  10. Il task di acquisizione • Tipologia di campionamento • FINITE SAMPLESil sistema acquisisce n campioni, quindi l’acquisizione si arresta e l’intero array di valori viene messo a disposizione • Da usare quando l’acquisizione è di breve durata oppure quando dati discontinui sono ammessi • CONTINUAil sistema acquisisce n campioni, e li rende disponibili senza però interrompere l’acquisizione, sfruttando un buffer a bordo della scheda • Da usare quando l’acquisizione non tollera dati discontinui >> sviluppo più complesso • Durata e frequenza di campionamento hanno significati diversi nelle due opzioni

  11. Il task di acquisizione • Canali virtuali • Canale fisico associato • Indica il nome univoco ed anche la tipologia di canale usato • Configurazione di collegamento • A ponte di wheatstone, raziometrico, differenziale… • Range di input • Assieme alla risoluzione della scheda ed alla sensibilità del trasduttore dà la risoluzione di misura della grandezza • Scala di conversione • Contiene le informazioni del diagramma di taratura del trasduttore collegato sul canale, in modo da visualizzare ed elaborare già i dati della grandezza fisica direttamente • Eventuali impostazioni di condizionamento • IEPE, ICP, TC, ed altri condizionatori standard

  12. Il salvataggio dei dati • Ricordarsi l’obiettivo finale per cui si sta effettuando la misura in modo da scegliere la modalità di salvataggio ed il tipo adeguato • Formato del salvataggio • Testuale, per facilitare l’integrazione con altri software e la lettura diretta • Binaria, per ottimizzare il salvataggio e la lettura rapidi dei dati • Database, per gestire grosse quantità di dati • Modalità di salvataggio • Singola • Continua

  13. Il salvataggio dei dati • Formato del salvataggio • Testuale • Facilmente integrabile con altri software • Può facilmente assumere dimensioni rilevanti • Può dipendere dalla localizzazione • Introduce un problema di risoluzione numerica • Binaria • Può essere letto e scritto solo dal software proprietario • Dimensioni relativamente ridotte • Neutrale rispetto alla localizzazione • Viene letto e scritto in maniera molto rapida • Database • Richiede una struttura dati ed un dbms di appoggio • Consente facilmente analisi statistiche sui dati • Può accumulare facilmente solo dati in forma sintetica

  14. Il salvataggio dei dati • Modalità di salvataggio • Singola • Un numero finito di campioni viene mantenuto in memoria e salvato solo al termine dell’acquisizione • Attenzione all’uso della memoria, rischio di perdita di dati! • Continua • Ogni volta che sono disponibili dei campioni vengono aggiunti al file già aperto senza poi chiuderlo • In caso di errore si ha un salvataggio parziale • Richiede attenzione nella pianificazione della sequenza • Discontinua • Blocchi finiti di dati vengono aggiunti ad un file esistente, senza però garantire alcuna continuità nel flusso • È necessario corredare i dati con informazioni temporali

  15. L’analisi dei segnali • Analisi in post processing: • Tutte le elaborazioni ed i calcoli per le misure indirette sono svolte al termine della misura • Non è possibile intervenire in caso di problemi • Nel caso di analisi complesse può essere necessario parcellizzare l’analisi per via dei limiti di memoria • Analisi on the run: • Tutte le elaborazioni sono svolte durante l’acquisizione, sfruttando il buffer della scheda • Consente di intervenire durante la misura • Può costringere ad un’acquisizione rallentata • Se l’analisi non è più che consolidata richiede comunque il salvataggio dei dati originari

  16. Tempistiche e prestazioni • Visualizzazione • Anche la semplice visualizzazione richiede un notevole carico computazionale, quindi è necessario valutare attentamente quanti dati visualizzare • Visualizzazione a misura finita • Evita problemi di concorrenza con acquisizione ed analisi • In caso di errore non è possibile intervenire • Adatta a prove di breve durata • Visualizzazione continua • Consente di monitorare il fenomeno ed identificare problemi • Aumenta le probabilità di catene di errori bloccanti • Costringe ad un’esecuzione rallentata dell’acquisizione • Visualizzazione discontinua • Visualizzazione di brevi sequenze ad intervalli regolari senza garantire la continuità • Ha solo funzione diagnostica

  17. Tempistiche e prestazioni • Prove di breve durata: • Acquisizione a campioni finiti • Visualizzazione a misura finita • Analisi in post processing • Salvataggio singolo • Prove di lunga durata: • Acquisizione in continua • Visualizzazione in continua • Analisi on the run • Salvataggio in continua ma la scelta dipende anche dalla frequenza

  18. Tempistiche e prestazioni

  19. Problemi comuni • Dimensioni del file • Spesso è un problema trascurato! • Es. 12 ch, 10 kHz per 10 minuti (salvando in binario dati DBL a 2byte) => 12x10000x600x2 = 412 Mbyte • File troppo grossi risultano spesso ingestibili! • Risoluzione numerica • Se si sceglie un formato di salvataggio testuale è necessario convertire un numero nella sua rappresentazione letterale • POSSIBILE PERDITA IRREVERSIBILE DI DATI • Incompatibilità tra salvataggio e post-processing • Probabile se vengono sviluppati separatamente

  20. Problemi comuni • Dimensioni del file • Salvare i dati in formato binario preferibilmente • Se indispensabile parcellizzare salvataggio ed analisi • Risoluzione numerica • Incompatibilità tra salvataggio e post-processing • Valutare attentamente il formato di esportazione • Mantenere una copia in binario dei dati grezzi è sempre consigliabile come tutela! • Effettuare una prova a vuoto del sistema di salvataggio ed analisi fino a raggiungere il formato finale desiderato

  21. Buone pratiche di programmazione • Approccio TARGET-ORIENTED • In primo luogo definire il risultato della misura: • Valore sintetico • Timehistory • Analisi complessa • Consentire durante la prova una rappresentazione della misura il più possibile vicina alla sua rappresentazione finale • Pianificazione del progetto • Capire il problema a fondo prima di iniziare • Testare ogni step di sviluppo in modo singolo • Fare prove preliminari a vuoto che producano un risultato finale

  22. Buone pratiche di programmazione • Scegliere uno dei due approcci : • BOTTOM-UP: • identificare i compiti più difficoltosi del progetto, sviluppare un modulo che li assolve, quindi integrarlo in step successivi nel progetto • utile solo se il progetto è semplice, ma il risultato è dubbio e si vuole valutarne la fattibilità • TOP-DOWN: • definire in linea di massima il funzionamento del progetto, partendo da uno schema logico di funzionamento, e delegare i vari compiti a template (moduli definiti solo in input-output) che verranno realizzati in seguito • Utile quando il progetto non prevede vincoli di fattibilità tecnica, anche in casi non complessi!

  23. Buone pratiche di programmazione • Mantenere il codice pulito ed intuitivo • Scrivere sempre da sinistra a destra • Non andare oltre le dimensioni dello schermo • Disegnare icone intuitive ed usare nomi estesi • Commentare i passaggi meno espliciti • Sfruttare al massimo librerie e progetti • Se si pensa che una serie di funzioni sia correlata,usare una libreria • Se si pensa che qualcosa potrebbe essere riusato, metterlo in una libreria • Mantenere il progetto ordinato con cartelle virtuali e librerie

More Related