UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
un programma di elaborazione matriciale. In DEA si è sviluppata una piccola<br />
applicazione che gira in ambiente MATLAB, i cui dettagli sono illustrati in<br />
appendice C.<br />
Ai fini del funzionamento del pacchetto, a prescindere dagli strumenti<br />
utilizzati per creare i file dei guadagni, è importante che questi ultimi abbiano la<br />
struttura di un file di testo organizzato secondo quanto descritto al paragrafo 5.3.3.<br />
La procedura di caricamento automatico legge le impostazioni dal data file<br />
relativo e setta opportunamente il sottosistema.<br />
La scelta di creare una look-up table dalla quale prelevare i valori dei<br />
guadagni corrispondenti ai diversi valori di ρ ha motivi puramente di efficienza<br />
e, in un certo senso, di semplicità: è infatti molto comodo e agevole manipolare<br />
matrici e creare file con la struttura desiderata all'interno di tool appositamente<br />
progettati, che mettono a disposizione funzionalità potenti a tale scopo; non è<br />
proprio così agevole effettuare le stesse elaborazioni all'interno di codice C, che,<br />
tra l'altro, non dispone di librerie sviluppate per il calcolo matriciale. Inoltre, la<br />
sensibilità del filtro al variare di ρ non è elevatissima. E' così possibile<br />
campionare, in un determinato range e con una opportuna granularità, diversi<br />
valori di ρ , calcolando i guadagni relativi, ed essere sicuri che utilizzare tali<br />
valori di ρ campionati produce lo stesso risultato che calcolando i guadagni<br />
relativi un ρ arbitrario.<br />
L'inizializzazione del sistema può avvenire richiamando le funzioni<br />
appropriate con i rispettivi parametri, oppure eseguendo una unica funzione, che<br />
legge i parametri da file e richiama le medesime funzioni passandovi tali valori<br />
(vedi appendice A, paragrafo 5).<br />
La tipica sequenza base di comandi per inizializzare il predittore è la<br />
seguente:<br />
init_kalman(int nvi, int *orders);<br />
143