• Non ci sono risultati.

Capitolo 6 Prove sperimentali ed acquisizione dei dati

N/A
N/A
Protected

Academic year: 2021

Condividi "Capitolo 6 Prove sperimentali ed acquisizione dei dati"

Copied!
13
0
0

Testo completo

(1)

Prove sperimentali ed

acquisizione dei dati

6.1

Introduzione

In questo capitolo verranno illustrate le prove sperimentali effettuate per veri-ficare se il dispositivo `e in grado di assolvere alle specifiche per il quale `e stato progettato e realizzato. Dopo aver testato la funzionalit`a dello strumento in acqua, come descritto nel precedente capitolo si vuole capire se il ricevitore sia in grado di distinguere gli echi riflessi da interfacce tessutali.

A differenza dell’acqua, infatti, i tessuti biologici hanno un coefficiente di assorbimento non trascurabile, ed inoltre la riflessione dell’eco non `e totale ma parziale, come gi`a ampiamente spiegato nel capitolo 3. Si vuole dunque capire se le interfacce tra i vari tessuti del corpo umano siano effettivamente distinguibili.

Prima dei test sull’uomo si sono effettuate prove su sistemi artificiali (”phan-tom”), ovvero su materiali non biologici che riproducono specifiche caratteristi-che di tessuti del corpo umano. Tali prove sono state necessarie per verificare quanto un mezzo con assorbimento non trascurabile incida sull’ampiezza dell’e-co, e soprattutto quanto le diverse velocit`a dell’onda ultrasonica nei vari

(2)

mate-6.2 Strumentazione utilizzata

Figura 6.1: Scheda di acquisizione dati S-6115 della National Instruments e connettore BNC-2110

riali possano provocare variazioni nell’elaborazione del segnale ricevuto. I ma-teriali testati sono stati gel di polivinilalcool (PVA) le cui caratteristiche sono state precedentemente studiate presso il Centro di Ricerca ”E. Piaggio”[34].

6.2

Strumentazione utilizzata

6.2.1

La scheda di acquisizione dati ”National

Instru-ments”

Il segnale ricevuto dal trasduttore, trasmesso e amplificato dal dispositivo ar-riva al calcolatore dove viene registrato e memorizzato tramite una scheda di acquisizione e digitalizzazione DAQ (data acquisition) della National Instru-ments. Il modello utilizzato in questo lavoro di tesi `e della serie S-6115 con connettore BNC-2110 (Fig.6.1)

(3)

La scheda ha 4 canali(2) di ingresso/uscita per segnali differenziali analo-gici per l’acquisizione eventualmente contemporanea di pi`u segnali, anche se il connettore utilizzato ha la possibilit`a di averne 8, indirizzati AI< 0 . . . 7 > (quelli in ingresso) e AO< 0 . . . 7 > quelli in uscita. Tramite il selettore (1) di figura si pu`o scegliere inoltre se misurare segnali di ingresso flottanti o riferiti a massa, ci sono inoltre due connettori per una funzione programmabile e per un’uscita su contatore (5). Per connettere segnali digitali la scheda `e dotata di terminali Digital and Timing I/O (4) e di due connettori BNC definibili dagli utenti(3).

La scheda si interfaccia con il PC tramite il software NI-DAQmx che per-mette di comunicare e controllare la DAQ dall’interno dell’ambiente LabVIEW e che contiene tutte le funzioni di programmazione per sfruttarne al meglio le potenzialit`a. Il software si colloca quindi tra l’applicazione che utilizza la sche-da e la schesche-da fisicamente inserita nel PC, ed `e in pratica una grossa libreria che il programmatore pu`o richiamare durante la realizzazione di un applicativo per gestire varie operazioni:

• ingressi analogici (conversione A/D )

• acquisizioni dati tramite registri (conversione A/D ad alta velocit`a) • uscite analogiche (conversione D/A)

• generazione di forme d’onda analogiche (conversione A/D nel tempo)

• input e output digitali

• operazioni per contatori e timer

• autocalibrazione

• acquisizione dati a memoria estesa

Il Ni-DAQ gestisce anche molte delle complicate funzioni di interfaccia tra il computer e la scheda DAQ come la programmazione delle richieste di interru-zione e dei controllori DMA[35].

(4)

6.2 Strumentazione utilizzata

6.2.2

Il software LabVIEW

TM

Il software LabVIEW (Laboratory Virtual Instrument Engineering Workben-ch) `e un ambiente di programmazione mirato ad applicazioni orientate prin-cipalmente all’acquisizione di dati, alla gestione degli strumenti di misura e all’analisi ed elaborazione dei segnali. Elaborato dalla National Instruments nel 1987 LabVIEW fornisce un ambiente di programmazione di tipo grafico ad oggetti, denominato linguaggio ”G ” (Graphical Language), che consente di realizzare programmi in forma di diagrammi a blocchi e non di sequenza di codici come avviene in altri linguaggi di programmazione quali ad esempio il Basic o il C.

Il linguaggio G conserva comunque molte similitudini con gli ambienti di programmazione tradizionali, tra le quali:

• tipi di dati e operatori di uso comune

• strutture di controllo del flusso di programma

• metodi di debug

• funzioni di libreria

Il programma LabVIEW traduce in linguaggio C le istruzioni definite dall’u-tente durante la stesura del codice, quindi, questo software opera per prima cosa un’operazione di compilazione durante la quale vengono creati i vari fi-le oggetto, ed una successiva fase di colfi-legamento che crea il fifi-le eseguibifi-le, unendo i vari oggetti creati nella precedente compilazione.

Le operazioni che abbiamo descritto avvengono, per quanto concerne la percezione dell’utente, in maniera del tutto trasparente; questa caratteristica `

e molto importante in quanto permette di operare come con un sistema in-terpretato, in cui si hanno sia facilit`a nell’operazione di debug del programma sia la possibilit`a immediata di intervenire per la correzione del codice, inoltre, volendo, l’utente ha la possibilit`a di inserire direttamente parti di codice scritto in linguaggio C.

(5)

Un’altra differenza sostanziale tra il linguaggio G e quelli tradizionali ri-siede nel controllo del flusso di programma. Nei linguaggi tradizionali di tipo testuale, l’ordine di esecuzione delle istruzioni che costituiscono il codice del programma `e determinato dall’ordine in cui le istruzioni sono scritte all’interno del codice stesso.

Nel linguaggio G, l’ordine di esecuzione `e stabilito dal susseguirsi del ”flusso di dati”, ovvero ciascuna istruzione viene eseguita non appena sono disponibili i suoi dati di ingresso. In questo modo, `e possibile eseguire operazioni in parallelo: il parallelismo `e una delle propriet`a peculiari di LabVIEW.

I programmi che vengono generati prendono il nome di strumenti virtuali (Virtual Instrument, VI): il termine strumenti `e determinato dal fatto che du-rante l’esecuzione i programmi sviluppati presentano agli utenti un’interfaccia analoga a quella degli strumenti di misura, mentre il termine virtuali dipende dal fatto che l’interazione avviene di fatto con un programma in esecuzione e non con un dispositivo fisico reale.

Un programma VI `e composto da tre parti fondamentali:

• Pannello frontale (Front Panel)

• Diagramma a blocchi funzionale (Block Diagram)

• Icona/Connettore (Icon/Connector)

I vantaggi di una simile implementazione sono la diretta implementazione di pi`u strumenti attraverso l’utilizzo di mouse e tastiera, un pannello frontale strettamente collegato e dipendente dal programma, la possibilit`a di coordinare le azioni di pi`u strumenti e una conseguente grande potenza nell’elaborazione dei dati.

Il programma si costruisce attraverso l’implementazione del diagramma a blocchi funzionale, il quale rappresenta il codice sorgente che pu`o essere un programma principale (VI) oppure un sottoprogramma o subroutine (sub-VI), in questo caso la sub-VI pu`o essere utilizzata anche all’interno di un altro programma oppure pu`o essere eseguita singolarmente.

(6)

6.2 Strumentazione utilizzata

Sia i programmi principali che i sottoprogrammi utilizzano per la trasmis-sione dei dati connettori grafici grazie a questa caratteristica un programma complesso pu`o essere visto come un insieme di moduli pi`u semplici collega-ti tra loro; il poter frammentare algoritmi complessi garancollega-tisce una maggiore controllabilit`a del lavoro svolto ed una maggiore facilit`a di intervento qualora si debbano effettuare delle modifiche al codice.

Quando si sono completati sia il pannello frontale che il diagramma a blocchi si ha a disposizione un file applicativo che `e memorizzato con l’estensione ”.vi”.

Pannello di controllo

Il pannello frontale `e l’interfaccia grafica che permette di definire ed introdurre tutte le grandezze di ingresso (input del programma) e tutte le grandezze in uscita (valori delle misure, risultati dei calcoli, grafici, etc.). Il nome deriva dal fatto che le varie grandezze possono essere definite e disposte in modo tale che esso assuma anche graficamente l’aspetto di un pannello frontale di uno strumento dotato di display, indicatori, manopole, tasti etc. Nel pannello frontale vengono inserite le seguenti entit`a distinte:

• Controllori : rappresentano variabili di ingresso che pu`o essere modificata dall’utente agendo sul pannello frontale;

• Indicatori : rappresentano variabili di uscita i cui valori sono modificati dal programma in esecuzione e non dall’utente;

Il pannello frontale, pertanto, sar`a costituito da un insieme di controllori e indicatori che definiscono l’interfaccia utente.

Diagramma a blocchi

Il diagramma a blocchi `e lo strumento grafico che consente di ”scrivere” il codice del programma. Esso sar`a costituito da un insieme di nodi e collegamenti che definiscono il codice del programma.

(7)

• Nodi (palettes): sono gli elementi di elaborazione elementare che effettua-no le varie operazioni richieste dal programma e appaioeffettua-no sotto forma di icone; ci sono quattro diversi tipi di nodi: i nodi funzione che eseguo-no le operazioni di signal processing, I/O su file, funzioni matematiche, temporizzazione, etc., i nodi sub-VI che sono descritti nel paragrafo Ico-na/Connettore, i nodi struttura, come i cicli For o While, che control-lano il flusso del programma, e infine i CIN, che sono interfacce tra il diagramma a blocchi e il codice sviluppato dall’utente scritto in C. • Collegamenti : appaiono come dei fili che uniscono i vari nodi e

permetto-no lo scambio di informazione ovvero il flusso dei dati, essi corrispondopermetto-no alle variabili dei linguaggi tradizionali. I dati fluiscono in una sola dire-zione, da un terminale sorgente ad uno o pi`u terminali meta. Per distin-guere i diversi tipi di dati sono utilizzati fili con aspetto differente che sul monitor appaiono anche in colori differenti per migliorarne la leggibilit`a.

Icona e Connettore

La coppia icona/connettore consente di trasformare un programma in un ogget-to che pu`o essere impiegato all’interno di un altro programma VI, diventando cos`ı un sub-VI. L’icona `e un simbolo grafico di piccole dimensioni che rappre-senta sinteticamente il VI stesso. Quando un VI viene impiegato all’interno di un altro programma come sub-VI, esso appare nel nuovo diagramma a blocchi con l’icona che lo identifica. Per poterlo collegare all’interno del nuovo diagram-ma a blocchi, `e necessario conoscere la corrispondenza tra le aree dell’icona e gli elementi di ingresso/uscita del pannello frontale associato al sub-VI. Questa corrispondenza `e determinata dal connettore. Pertanto, il connettore determi-na la corrispondenza tra i termidetermi-nali presenti nell’icodetermi-na e le variabili di ingresso e uscita del programma.

(8)

6.3 Algortimi labVIEW implementati

6.3

Algortimi labVIEW implementati

Per ottenere una buona elaborazione del segnale si `e deciso di implementare due algoritmi in linguaggio G. Il primo prevede l’acquisizione dei dati in forma-to digitale, la visualizzazione (tempo sull’asse delle ascisse e ampieza in Volt sull’asse delle ordinate) sul monitor del computer e la possibilit`a di salvare i risultati dell’acquisizione su file senza compiere nessuna elaborazione; la sua funzione `e principalmente quella di verificare che l’indagine ecocardiografica sia andata a buon fine, ovvero che il trasduttore sia stato posizionato in maniera corretta. Il secondo algoritmo invece legge il file-dati precedentemente salvato e compie l’elaborazione software per restituire una visualizzazione del segnale in formato ”M-mode” (cfr. Par.1.3.1). L’algoritmo compie sostanzialmente le seguenti operazioni:

1. lettura del file-dati

2. visualizzazione senza elaborazione

3. normalizzazione (±1 valore picco-picco)

4. visualizzazione dell’eco normalizzato

5. rilevazione dei picchi che superano una soglia prestabilita

6. generazione di impulsi di uguale valore all’istante di superamento della soglia

7. visualizzazione su un grafico che ha il tempo sull’asse delle ascisse e lo spazio sull’asse delle ordinate (M-mode)

8. salvataggio su file

Vediamo in dettaglio in cosa consistono i vari passi dell’algoritmo descritto. Gli echi vengono visualizzati (2) in base al tempo t impiegato per coprire il percorso tra l’interfaccia che li genera ed il trasduttore che li riceve, tale tempo sar`a quindi proporzionale sia alla distanza che alla velocit`a di propagazione

(9)

Figura 6.2: labVIEW, diagramma a blocchi dell’algoritmo di elaborazione dell’eco

dell’onda ultrasonora nei tessuti attraversati. Sincronizzando la visualizzazione dell’eco al tempo di ripetizione dell’impuilso, sul grafico si vedr`a un unico eco che si muove tra due distanze temporali calcolate ponendo l’origine dell’asse dei tempi al momento dell’invio dell’impluso da parte del trasduttore. L’eco viene poi normalizzato (3) tra i valori di picco in modo da definire la soglia come un valore tra 0 e 1 e visualizzato su un grafico (4). Di tali echi verranno rilevati i picchi che superano una soglia prestabilita Vr(5), ci`o fa si che per ogni

eco ricevuto si fissi l’istante temporale in cui tale eco `e massimo(6). Ci sar`a in questo modo un impulso che si muove tra due valori temporali. Tramite la semplice operazione

p (t) = vm· t 2

viene visualizzato sull’asse delle ordinate (7) la posizione p(t) dell’interfaccia che ha prodotto l’eco (nel caso in esame la parete ventricolare sinistra) e la sua variazione rispetto al tempo. Il diagramma a blocchi dell’algoritmo `e illustrato in Fig.6.2.

(10)

6.3 Algortimi labVIEW implementati

Figura 6.3: Schema dei test effettuati (a) gel (b) uomo, ed echi acquisiti (c) gel spesso 3 cm (d) gel spesso 2 cm (e) uomo

(11)

6.4

Prove sperimentali

6.4.1

Test del dispositivo su ”phantom”

I ”phantom” utilizzati sono idrogel in PVA che hanno subito un numero diverso di cicli di reticolazione. In seguito a ci`o cambiano le propriet`a fisiche del gel, infatti quelli che hanno subito meno cicli contengono una maggiore quantit`a di acqua e quindi hanno un coefficiente di assorimento minore rispetto a quelli con pi`u cicli di reticolazione, i quali si presentano pi`u compatti ed opachi[34]. I gel sono stati posti sul target di rame usato anche per le prove in acqua, ci si aspetta quindi che il coefficiente di riflessione tra il rame ed il gel sia minore rispetto al corrispettivo in acqua.

Lo spessore dei gel varia dai 2 ai 5 cm, distanze tra le quali ci si aspetta di trovare la parete cardiaca rispetto alla finestra intercostale dove verr`a posto il trasduttore. I risultati di tale test sono mostrati in figura 6.3(c), e come si pu`o notare l’eco rilevato `e ben visibile. Tra i due diversi tipi di gel utilizzati la differenza di ampiezza dell’eco `e molto piccola, per cui ci si aspetta che la maggior incidenza nell’attenuazione dell’impulso ultrasonoro riflesso sar`a dovuta al minor coefficiente di riflessione delle interfacce tessutali rispetto alla interfaccia gel/rame che invece ha un coefficente di riflessione quasi unitario.

6.4.2

Test del dispositivo sull’uomo

I test sull’uomo, a differenza di quelli su phantom, hanno confermato l’ipotesi, prima avanzata, che il basso coefficiente di riflessione delle interfacce tessutali incide in maniera preponderante sull’ampiezza dell’eco di ritorno. Mettendo a confronto i grafici ottenuti per i phantom , con quelli ottenuti sull’uomo (Fig.6.3) si nota una riduzione di oltre l’80%.

Il test `e stato effettuato posizionando il trasduttore sulla finestra intercosta-le tra la 4a e la 5a costola, come evidenziato in fig.6.4. In tale zona `e possibile

individuare un percorso per l’impulso ultrasonoro che non incontri interfacce tra tessuti molto differenti per impedenza acustica. Cosa che invece accade se

(12)

6.4 Prove sperimentali

Figura 6.4: Zona di posizionamento del trasduttore e percorso del fascio ultrasonoro

si incontrano interfacce tra tessuti molli ed aria (polmone) o tra tessuti molli ed osso (costola). In questi casi le differenti impedenze acustiche (cfr. tab.3.1) rendono il coefficiente di riflessione Γ (eq.3.9) prossimo all’unit`a, impedendo, di fatto, all’impulso ultrasonico di propagarsi ulteriormente.

Il trasduttore `e stato posto sotto una fascia elastica all’altezza del torace ed `e stato accoppiato acusticamente con un gel per ultrasuoni per ridurre la possibilit`a di bolle d’aria, che avrebbero fortemente disturbato il propagarsi dell’onda ultrasonica, dovute alla non perfetta adesione del trasduttore alla cute del soggetto in esame. Inoltre si `e inserito uno spessore di gommapiu-ma tra la fascia ed il trasduttore per aumentare l’adesione e la pressione della fascia (Fig.6.5). Il dispositivo elettronico `e stato ancorato ad una piastra di plexiglass, sulla quale sono state posizionate anche le batterie di alimentazio-ne, e tramite un cavo coassiale `e stato portato il segnale di sincronismo per la temporizzazione degli impulsi, il segnale di uscita dal dispositivo `e stato prele-vato, invece, con un cavo triassiale per permettere l’elaborazione in modalit`a differenziale dei due canali d’uscita.

L’eco `e rilevato dopo un periodo di circa 28 µsec, per cui considerando una media tra la velocit`a acustica nei tessuti attraversati (muscolo e cartilagine) si evince che la parete ventricolare sinistra del soggetto in esame `e ad una

(13)

Figura 6.5: Test del dispositivo sull’uomo

distanza minima dalla cute di circa 2,2 cm; risultato in accordo con i valori teorici estratti dalla tabella di figura 6.4 [36].

L’elaborazione software di tale segnale (Fig.6.6), ha dato risultati soddisfa-centi; i problemi che si sono maggiormente evidenziati sono stati:

• la difficolt`a di elaborare in maniera corretta il segnale che dipende pur-troppo dal segnale acquisito. Infatti, nonostante gli accorgimenti usati nel posizionamento, la pressione che si riesce ad ottenere con la fascia elastica non permette una perfetta adesione ed orientazione del trasdut-tore, problema che invece non si riscontra nella fase di ”setup”, quando al trasduttore viene data un’orientazione precisa tramite il posizionamento manuale.

• l’imprecisione nella determinazione della porzione di parete cardiaca che si sta monitorando, in quanto non avendo a disposizione un’ecocardio-grafo tradizionale non si hanno ”gold standard”, ovvero misure precise

Figura

Figura 6.1: Scheda di acquisizione dati S-6115 della National Instruments e connettore BNC-2110
Figura 6.2: labVIEW, diagramma a blocchi dell’algoritmo di elaborazione dell’eco
Figura 6.3: Schema dei test effettuati (a) gel (b) uomo, ed echi acquisiti (c) gel spesso 3 cm (d) gel spesso 2 cm (e) uomo
Figura 6.4: Zona di posizionamento del trasduttore e percorso del fascio ultrasonoro
+2

Riferimenti

Documenti correlati

The conclu sion is rather obvious: the free market will fail to achieve an efficient allocation of resources in the case of public or semi-public goods and

The case of the first country is simple, as we simply need to set B 0 (·) = 0 in order to see that any household with income below the cap on taxable earnings will see the payroll tax

In reality, the exchange rates only conditionally can help to cope with adverse economic developments and country – specific shocks. Fiscal policy instruments are of

In Soviet-type economies inflationary pressures, often reduced but not eliminated by central planning, take the form not only _of open officially recorded

It presents and analyses, first, the EU’s internal social security coordination regime with a view to establishing the social security status of third country nationals, and

fortemente il campo d’azione della gestione finanziaria. L’alto grado di indebitamento bancario rispetto alle grandi imprese e l’ottusità nel valutare forme di

There is, for the last five years, virtually no reliable statistical and research data available in Armenia on emigrants returning to Armenia: much as in the case of other

In particolare quando facciamo del male a qualcun altro, avvertiamo dissonanza cognitiva, quindi discrepanza tra la propria rappresentazione di sé e il modo in cui