• Non ci sono risultati.

Interfaccia utente e risultati sperimentali

N/A
N/A
Protected

Academic year: 2021

Condividi "Interfaccia utente e risultati sperimentali"

Copied!
10
0
0

Testo completo

(1)

CAPITOLO 4

Interfaccia utente e risultati sperimentali

In questo capitolo vengono descritte le prove effettuate per testare e verificare le prestazioni del sistema e la realizzazione di un’interfaccia grafica in grado di gestire i dati inviati mediante tecnologia bluetooth dal microcontrollore al PC.

Una preliminare verifica sperimentale è stata eseguita prelevando i segnali digitali modulati PWM direttamente dagli accelerometri e visualizzandoli su un oscilloscopio. Quest’ultimo è stato interfacciato via seriale al Pc sul quale sono stati acquisiti i grafici riportati nelle figure 4.1-4.4.

(2)

Capitolo 4

E’ stata effettuata un’analisi sulla stabilità dei segnali, ed in particolare si è controllato che la durata del periodo del segnale digitale (T2), fosse uguale per entrambi gli assi delle stesso accelerometro e che si mantenesse costante durante le variazioni di posizione del sensore.

Si può notare, infatti, dalle figure sotto riportate, che la durata del periodo T2, contraddistinto con dt, è di 8.160ms, per entrambi gli assi X e Y dello stesso sensore.

(3)

Capitolo 4

Figura 4.3 Durata del periodo T2 del segnale Y

Poi è stata effettuata la stessa analisi sui segnali dell’altro accelerometro, notando delle differenze sulle durate dei segnali: infatti, pur essendo entrambi i sensori settati con gli stessi parametri, mostravano una durata del periodo T2 differente. Questo è stato preso in considerazione nello sviluppo del firmware del microcontrollore: infatti, il programma di gestione del PIC, esegue un conteggio della durata del periodo T2 su entrambi gli accelerometri. Su uno di essi, il calcolo viene effettuato solo sul segnale relativo all’asse X, visto che T2 è uguale per entrambi gli assi.

Nella figura sottostante viene mostrato il segnale digitale relativo all’asse Z, dove è possibile notare il valore di T2 essere uguale a 7.690ms.

(4)

Capitolo 4

Figura 4.4 Durarata del periodo T2 del segnale Z

In appendice sono riportate tutte le immagini riguardanti l’acquisizione dei segnali degli accelerometri, dove è possibile notare la dipendenza della durata della parte alta del segnale digitale (T1) in funzione della posizione del sensore.

4.1 Interfaccia

Grafica

L’interfaccia grafica in grado di gestire i dati inviati via bluetooth dal microcontrollore è stata realizzata in Visual Basic.

(5)

Capitolo 4

I dati validi, dopo un opportuno segnale di sincronismo, venivano selezionati ed elaborati per ricavare l’accelerazione subita dalla coppia di accelerometri.

La scansione della seriale è gestita da un timer: i dati vengono prelevati con un intervallo regolare di 25ms; la temporizzazione è settabile dall’utente.

Come segnale di sincronismo è stata scelta la combinazione di caratteri “sdP”,espessa in codifica ASCII. Viene prelevato un buffer di 1024 campioni dalla seriale, all’interno del quale vengono selezionati i dati validi dopo la combinazione di caratteri di sincronismo. Il microcontrollore invia 19 caratteri, di cui i primi tre di sincronismo, gli altri 16 sono così organizzati: vengono prima inviati i valori relativi alla durata della parte alta dei segnali degli accelerometri (T1x, T1y, T1z), poi ci sono i valori di T2x e T2z ed infine i dati di calibrazione (ZXcal, ZYcal, ZZcal).

Nei primi 500ms di acquisizione viene effettuata la fase di calibrazione, durante la quale il soggetto che indossa il sistema sensorizzato deve restare fermo nella propria posizione di riferimento. Alla fine di questa procedura, viene visualizzato su monitor una finestra di dialogo che comunica la fine della fase di calibrazione. Il soggetto potrà incominciare a muoversi e tutti i suoi spostamenti verranno calcolati come variazioni rispetto al punto di riferimento, assunto durante la fase di calibrazione. Nella figura sottostante è riportata la videata che appare su monitor alla fine della fase di calibrazione.

(6)

Capitolo 4

Figura 4.5 Immaggine che appare su monitor dopo la fase di calibrazione

Successivamente i valori di calibrazione , T2 e Zcal, vengono visualizzati all’interno dell’interfaccia per poterne controllare la veridicità ed averli sempre a disposizione per eventuali calcoli di verifica.

Il programma prosegue con l’acquisizione di T1x, T1y e T1z, i valori relativi alla durata della parte alta dei segnali degli accelerometri: questa operazione viene effettuata ciclicamente fino a che non si verifica la condizione di arresto, gestita direttamente dall’utente, schiacciando l’apposito bottone di “STOP”, presente nell’interfaccia.

I dati, T1x, T1y e T1z vengono memorizzati ed elaborati per ottenere i valori dell’accelerazione lungo i tre assi cartesiani X,Y e Z, rispettivamente.

In relazione al bit_scale_factor utilizzato (cfr. 3.61) è possibile determinare le dimensioni del risultato e quindi avere il valore dell’accelerazione espressa in funzione

(7)

Capitolo 4

Per le finalità di questo lavoro di tesi, monitorare il movimento di un soggetto che indossa il sistema sensorizzato, il programma è stato implementato in modo che restituisse come valori d’uscita le variazioni d’angolo subite dalla coppia di sensori. E’ stato possibile verificare l’efficienza del programma di gestione ed acquisizione di dati trasmessi in seriale via bluetooth, attraverso prove successive nelle quali sono stati confrontati i risultati emessi dall’interfaccia con gli angoli di rotazione, noti a priori, a cui la coppia di accelerometri veniva sottoposta. Per ogni asse X, Y e Z sono state applicate ai sensori variazioni d’angolo di 90± ° , rispetto alla posizione di riferimento, assunta durante il periodo di calibrazione, ed è stato possibile leggere in tempo reale, dall’interfaccia creata in Visual Basic, i valori di 90± ° per AccelX, AccelY e AccelZ (variabili di uscita dell’interfaccia) rispettivamente.

Nelle figure sottostanti sono riportate, come esempio, delle parti dell’interfaccia creata, dove è possibile notare il grafico tridimensionale dell’andamento dei tre valori di uscita e le tre caselle nelle quali è possibile leggere i valori dei tre angoli di rotazione.

(8)

Capitolo 4

Figura 4.7 Esempio di videata su monitor di elementi presenti nell'interfaccia

Si è cercato di creare una rappresentazione tridimensionale di un oggetto che, in tempo reale, variasse la sua posizione in funzione dello spostamento effettuato dal soggetto che indossa il sistema sensorizzato. L’obiettivo della tesi era quello di visualizzare in tempo reale la postura e il movimento del corpo. Per rendere leggibile l’interfaccia utente, è stato realizzato in 3DStudio Max un modello tridimensionale del corpo, importato in ambiente Matlab/Simulink e pilotato in tempo reale. La fase preparatoria al monitoraggio in tempo reale è stata quella di creare un file, “Salvadati.txt”, in cui venivano scritti i valori di AccelX, AccelY e AccelZ durante il movimento del soggetto che indossava gli accelerometri e successivamente utilizzare i dati acquisiti per pilotare off-line il movimento della figura tridimensionale.

La figura tridimensionale utilizzata è stata creata con un software di grafica 3D , il 3DSTUDIO MAX, in cui è stata settata la possibilità di far variare la posizione della

(9)

Capitolo 4

Figura 4.8 Schermata del software 3DStudio Max con le diverse viste del soggetto tridimensionale creato.

E’ stato fatto questo collegando un “dummy” allo sterno dell’uomo 3D, dove lo sterno fa appunto parte della stessa mesh di tutto il tronco superiore. Il “dummy” è un cubo che è possibile ruotare, scalare o traslare con comandi opportuni e che riproduce le variazioni subite direttamente all’immagine tridimensionale a cui è collegato. Si può gestire il “dummy” con il Virtual Box di Matlab: dopo aver caricato, attraverso il SimulLink di Matlab, l’immagine 3D è possibile selezionare che tipo di operazione effettuare sull’uomo tridimensionale

(10)

Capitolo 4

Figura 4.9 Immagine dell’uomo tridimensionale creato con 3DStudio Max

Selezionando la rotazione, la gestione del “dummy” in Matlab avviene inserendo in ingresso un vettore riga di tre elementi, che seleziona l’asse attorno al quale la figura compierà una rotazione, e il valore dell’angolo.

Attraverso un’opportuna combinazione di operazioni in ambiente Matlab, è stato possibile prelevare i dati, presenti nel file creato dal programma implementato in Visual Basic, e caricarli iterativamente in Virtual Box, per la gestione dell’uomo 3D.

Il file “Salvadati.txt” è costituito da una matrice di 3 colonne e 4000 righe nelle quali per ogni colona è associato il valore di variazione d’angolo relativo all’asse X, Y e Z rispettivamente, e ogni riga rappresenta istanti diversi di acquisizione.

Figura

Figura 4.1  Segnale digitale prelevato dall'accelerometro ADXL202JE
Figura 4.2  Durata del periodo T2 del segnale X
Figura 4.3   Durata del periodo T2 del segnale Y
Figura 4.4  Durarata del periodo T2 del segnale Z
+6

Riferimenti

Documenti correlati

Per una data frequenza di campionamento e per un dato numero di bit d’uscita, il convertitore a conteggio in genere richiede una frequenza di clock molto più elevata di

NB: i permessi definiti su un file dipendono dai permessi della directory che lo contiene Per i file speciali:. r: leggere dal device w: scrivere sul device x:

INT.. PAVIMENTAZIONE PERMEABILE FASCIA FILTRO.. Pavimentazioni permeabili: Sito Sperimentale.. Scavo area per realizzazione pavimentazione Realizzazione strato di allettamento

Se la tipologia di motori più venduta in Europa è quella dei quattro cilindri in linea diesel, il suo corrispondente americano è il sei cilindri a v benzina, presente come

Le due liriche sono studiate e pubblicate insieme in «Solaria» ’26 e si presentano con il titolo complessivo di Versi (Vento e bandiere non aveva titolo); in Rib

[r]

Coordination of European Energy Regulators and CEER note that “Arti- ficially low regulated end-user prices, although set above energy costs, discourage market entry and

Moto uniforme su rampe in pietrame in condizioni di