venerdì 30 settembre 2011

Sensore di assetto e posizione

Tra le applicazioni elettroniche da utilizzare a bordo dei veicoli, siano essi aerei, marini o terrestri, una di quelle che più mi affascina è relativa al campo dei sistemi di navigazione. Il cosiddetto Navigatore Satellitare è ormai considerato un accessorio indispensabile nel settore automobilistico, ma tante altre novità ci attendono!


In questo post vorrei fornirvi qualche aggiornamento sullo stato del progetto Sistemi Inerziali (che ho già introdotto nel blog qui) e fornire qualche dettaglio sull'architettura del sensore di assetto e posizione, un elemento centrale per i sistemi di navigazione.

Nella figura seguente trovate lo schema a blocchi del circuito:


Vediamo quali sono gli elementi principali del design:

  • Tre accelerometri MEMS analogici montati perpendicolarmente tra loro
  • Tre giroscopi MEMS analogici montati perpendicolarmente tra loro
  • Un Magnetometro Digitale Triassiale
  • Un convertitore A/D SigmaDelta a 16/24 bit AD7739
  • Un microcontrollore NXP LPC2129
  • Due generatori di Clock
  • Due sensori di temperatura
Premetto che i sensori MEMS sono disponibili in ampia scelta tra diversi costruttori e, solo per citarne alcuni, li troverete nel catalogo Analog Devices, ST Microelectronics o VTI, mentre per i sensori magnetici allo stato solido la scelta ricadrà quasi esclusivamente tra i sensori Honeywell.

Vediamo ora, per punti salienti, come funziona il nostro circuito:
  1. Fase di startup e inizializzazione - Il software caricato a bordo del microcontrollore LPC2129 provvede a configurare tutte le periferiche interne ed esterne
  2. Fase di allineamento della matrice di Coseni Direttori - La soluzione di assetto è rappresentata da una matrice 3x3 detta DCM (Direction Cosine Matrix) che deve essere inizializzata mediante l'allinemento con il vettore gravitazionale locale (allineamento al piano locale). Tale allineamento viene effettuato nei primi secondi di funzionamento utilizzando i dati forniti dagli accelerometri e dal magnetometro digitale. Durante la fase di allineamento il sensore deve essere tenuto stazionario.
  3. Fase operativa - Questa è la condizione di lavoro del sensore. Durante questa fase la soluzione di assetto viene costantemente aggiornata integrando i dati forniti dai giroscopi e aggiornando la DCM. Nel nostro prototipo tale integrazione avviene alla frequenza di 100Hz.
  4. Correzione degli errori - L'integrazione delle velocità angolari fornite dai giroscopi, comporta la presenza di alcuni errori quali: approssimazioni numeriche, bias dei giroscopi, errori di artogonalità, bias termici. Al fine rendere stabile nel lungo termine la soluzione di assetto si provvede a introdurre un anello di retroazione con i dati forniti dagli accelerometri, dai sensori magnetici e dal sensore GPS se presente. Tali dati saranno opportunamente filtrati (es. filtri ricorsivi, PID, Kalman, ecc.) e provvederanno a stimare e correggere gli errori accumulati nella DCM.
  5. Fase di output - In funzione dell'applicazione può essere necessario fornire la soluzione di assetto in termini di angoli euleriani (Roll, Pitch, Yaw - Heading), dati di velocità lineare e angolare, accelerazione, jerk, posizione rispetto al geoide WGS-84, ecc. Questa fase provvede a estrarre i dati nel formato desiderato ed a trasmetterli in uscita. Nel nostro prototipo l'uscita è costituita da una porta seriale RS232 la cui velocità è fissata in 115 Kbps. La frequenza di aggiornamento del pacchetto dati è, invece, di 25Hz.
Lo sviluppo di questo sensore vi consentirà di effettuare una moltitudine di esperimenti che vanno dalle applicazioni veicolari, alla robotica, al monitoraggio ambientale, alla realtà virtuale. A voi la scelta!

Qui Pianeta Terra, a presto.

Nessun commento:

Posta un commento