UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Il filtro di Kalman è stato prima codificato in MATLAB, opportunamente<br />
simulato ed infine importato sotto HARTIK. Questo ultimo passaggio ha richiesto<br />
la scrittura di codice per realizzare il calcolo matriciale, che invece in MATLAB è<br />
completamente trasparente. La simulazione è stata di fondamentale importanza<br />
anche per testare il codice C, in quanto è stato possibile fornire in ingresso il<br />
medesimo segnale sia al programma in MATLAB che alla simulazione real-time<br />
in HARTIK, controllando l'output prodotto per confrontarne il comportamento.<br />
Questo ha permesso di sviluppare una libreria per HARTIK robusta e affidabile.<br />
Il codice MATLAB del filtro di Kalman è riportato in appendice C, in<br />
quanto può essere di grande utilità per capirne il funzionamento, e certamente lo è<br />
molto di più che analizzare centinaia di righe di codice C.<br />
Il MATLAB è stato utilizzato anche per un'altra importante funzione,<br />
indispensabile per il corretto funzionamento della libreria, ovvero la generazione<br />
dei data file che contengono i ρ ed i relativi guadagni per il filtro. Anche il<br />
codice di questo programma è riportato in appendice C.<br />
Questa scelta si è resa necessaria al fine di evitare di dover scrivere una vera<br />
e propria libreria di calcolo matriciale per HARTIK, in quanto, oltre che ad<br />
operazioni banali quali prodotti e trasposizioni di matrici e vettori, il calcolo dei<br />
guadagni per il filtro di Kalman prevede il calcolo dell'inversa di una matrice<br />
quadrata, che richiede la scrittura di codice per il calcolo numerico affatto banale.<br />
Dunque si è preferito scrivere un semplice programma in MATLAB che<br />
genera, per qualsiasi dimensione del modello del sistema, un file contenente<br />
svariati valori del ρ e dei guadagni corrispondenti. Con banalissime modifiche al<br />
codice è possibile aumentare il numero ρ diversi da inserire nel file (attualmente<br />
sono 120), oppure variare il range entro il quale campionare i valori di ρ stessi,<br />
che, al momento, va da<br />
10<br />
10 −<br />
a<br />
12<br />
10 +<br />
.<br />
150