• Non ci sono risultati.

La rappresentazione del movimento è il vettore ottenuto dalle misurazioni su ogni asse di accelerazione del sensore accelerometro, al quale, dopo aver ricavato con accuratezza l’orientamento con le tecniche visto in precedenza, viene sottratto il vettore della gravità.

Questo è necessario perché, come già affrontato in precedenza, questa misura include al movimento l’accelerazione dovuta alla gravità terrestre. Avendo a disposizione l’orientamento del dispositivo è possibile sapere com’è orientato il vettore della gravità rispetto al sensore, il quale sottratto alle misure di accelerazione fornisce in uscita un valore di misura relativo solo all’accelerazione dinamica.

Per ovviare ai problemi di elevata rumorosità che affliggono le misure dell’accelerometro è necessario ricorrere al filtraggio di questi valori.

In questo progetto è stato impiegato un filtro di Kalman per ridurre il rumore dell’accelerometro nei tre gradi di libertà relativi al movimento, ma non ha effetto sul calcolo dell’orientamento per il quale è già implementato il filtro di Magdwick.

2.6.1 Filtraggio Kalman

Il filtraggio Kalman, noto anche come stima quadratica lineare (LQE dall’

inglese Linear Quadratic Estimation), è un algoritmo ricorsivo che utilizza una serie

di misurazioni contenenti rumore, osservate nel tempo.

Il filtro prende il nome da Rudolf E. Kálmán, uno degli sviluppatori principali della sua teoria, la quale, adotta un sistema di determinazione probabilistica in cui la stima

55

prodotta può essere descritta come la soluzione ottimale solo quando il sistema può essere considerato completamente lineare e influenzato solo da fonti di rumore con distribuzioni Gaussiane.

In questo progetto si rende necessario in quanto le misure del sensore sono conosciute solo con un certo grado di incertezza e presentano rumore. Questo filtro acquisisce i campioni di misurazione in tempo discreto con un certo numero di quantità finite per descrivere lo stato del sistema.

Ideato nel 1960 dall’ingegnere Rudolf Emil Kalman, il filtro dal quale prende il nome, stima gli stati di un sistema lineare affetto da letture rumorose.

Il filtro Kalman per eseguire il suo processo ricorsivo non necessita che tutti i dati precedenti siano conservati in memoria e riprocessati ogni volta che viene effettuata una nuova misurazione. Ciò che viene conservato come variabile del filtro è la stima dell’errore, il quale, combinato con la misura disponibile, generare una stima del valore d’uscita in modo da minimizzare statisticamente l’errore complessivo. Il principio del filtro può essere compreso suddividendolo in due fasi: una fase di predizione che produce una stima dello stato corrente del valore d’uscita, e una fase che produce un valore di errore il quale verrà memorizzato per l’iterazione seguente. Eseguendo più volte il filtro, ad ogni iterazione il risultato del valore di uscita viene affinato minimizzando statisticamente l’errore.

Comparando il valore ottenuto dalla stima predittiva con quello del rumore in ingresso, aggiornando le stime con una combinazione pesata del valore di predizione e quello misurato, con sempre maggior incremento della certezza dato alla stima precedente, con una capacità predittiva sempre più affinata. Infine, la covarianza di questa stima può essere aggiornata con l’accuratezza della nuova stima ottenuta a seguito della comparazione con i dati misurati.

Un esempio di questo passaggio può essere immaginare una persona che si muove in una stanza buia da esso conosciuta, la lunghezza del passo iniziale permette alla persona di stimare la nuova posizione. Con ogni passo successivo la certezza della posizione raggiunta diminuisce a causa delle incertezze aggravate nella lunghezza di ogni passo. La fase di aggiornamento può quindi essere rappresentata dal raggiungimento della persona di un arredo posizionato nella stanza, che permetterà di correggere la previsione della posizione precedente e di aumentare la certezza della stima della posizione. Si innesca quindi un processo ricorsivo di misurazioni successive e adattamenti della lunghezza dei passi per ridurre ulteriormente

56

l’incertezza della nuova posizione da raggiungere. Questo ciclo può essere ripetuto ricorsivamente con ogni successivo passo senza nessuna conoscenza della storia delle variabili utilizzate precedentemente.

Questa condizione è rappresentata matematicamente come modello di previsione e modello di misurazione:

Xk = Fxk-1 + Buk + N(0,Qk) Zk = Hx+N(0,Rk)

Dove F è la matrice del modello di transizione che elabora lo stato precedente Xk-1 allo stato successivo Xk, B è la matrice del modello di transizione di controllo che elabora il vettore di controllo uk nello stato successivo Xk, infine H è la matrice del modello di osservazione che elabora lo stato predeterminato Xk sul vettore di misura Zk. N (0, Qk) e N (0, Rk) rappresentano la gaussiana delle fonti di rumore delle varianze e della media 0. Kalman è ampiamente utilizzato nelle applicazioni aerospaziali, nell’analisi del movimento umano e nella robotica.

2.6.2 Rappresentazione in coordinate polari nello spazio

Le coordinate polari nello spazio, dette anche coordinate sferiche, permettono di rappresentare la posizione di un punto nello spazio in un sistema diverso rispetto alle coordinate cartesiane.

Esse sono sempre rappresentate in tre valori, in quanto, come riferito in precedenza, questo è il numero minimo di coordinate tridimensionali per definire un punto nello spazio. Le coordinate sferiche sono definite partendo da quelle cartesiane come:

• 𝑟𝑟 = �𝑥𝑥2+ 𝑦𝑦2+ 𝑧𝑧2 rappresenta la distanza di P dall’origine;

φ l’angolo formato dal semiasse positivo delle z e dalla semiretta uscente dall’origine e passante per P;

θ l’angolo formato dal semiasse positivo delle x e la semiretta nel piano xy uscente dall’origine e passante per la proiezione P' di P su tale piano.

57

Figura 2.9: Coordinate polari nello spazio e cartesiane

Dove x, y e z sono le coordinate cartesiane e P il punto da rappresentare nello spazio. I dati acquisiti dall’accelerometro dopo essere stati filtrati con Kalman, vengono rappresentatati implementando la descrizione in coordinate polari nello spazio.

Documenti correlati