laureando:relatori: danilo dalenasergio carrato slim hachani
DESCRIPTION
Realizzazione di una scheda di acquisizione dati da interfacciare ad un microprocessore ARM ed impiego della stessa per applicazioni mobili. Laureando:Relatori: Danilo DalenaSergio Carrato Slim Hachani. Premessa. GE863-PRO3 (Telit): Processore GSM/GPRS quadband - PowerPoint PPT PresentationTRANSCRIPT
Realizzazione di una scheda di Realizzazione di una scheda di acquisizione dati da interfacciare ad un acquisizione dati da interfacciare ad un microprocessore ARM ed impiego dellamicroprocessore ARM ed impiego della
stessa per applicazioni mobili stessa per applicazioni mobili
Laureando:Laureando: Relatori:Relatori:Danilo DalenaDanilo Dalena Sergio CarratoSergio Carrato
Slim HachaniSlim Hachani
2
Premessa
GE863-PRO3 (Telit): Processore GSM/GPRS
quadband Microcontrollore ARM9
AT91SAM9260:• 220 MIPS• Interfacce SPI, I2C, SD/MMC,
USB,…• Sistema operativo Linux
8/64 MB SDRAM + 4 MB Flash
3
Problema
Sfruttare GE863-PRO3 per sviluppo di applicazioni quali:
Rilevazione del nord magnetico (Compass)
Realizzazione di un sistema di navigazione inerziale (INS)
4
Soluzione
Usare sensori per rilevare: Campo magnetico terrestre Accelerazione di gravità Accelerazione dinamica Velocità angolare
Compass
INS
5
Sensor Board (1/3)
Componenti scelti: Campo magnetico Magnetometro
HMC1052L (assi x e y) + HMC1051Z (asse z)
Accelerazione (statica + dinamica) Accelerometro ADXL330 (assi x, y e z)
Velocità angolare Giroscopio 3 x LISY300AL (asse z)
Convertitore analogico-digitale AD7718
6
Sensor Board (2/3)
LISY300AL (z)
LISY300AL (x)
LISY300AL (y)
HMC1051Z (z)
HMC1051Z (x,y)
ADXL330 (x,y,z)
AD7718:ADC ΔΣ con 10 ingressi 24 bit di risol interfaccia SPI
Connettore26 pin
7
Sensor Board (3/3)
8
Interfacciamento
GE863-PRO3
Interface Board
Motherboard
Adapter Board
9
Linux O.S.
Formato da: Filesystem (JFFS2, contiene directory
predefinite) Linux kernel
gestisce processi, memoria e periferiche dispone di moduli, cioè driver per uso di:
GPIO SPI SD/MMC
10
Acquisizione
Si sviluppa applicativo in C che: Riceve i dati dei sensori tramite bus SPI Salva i dati su scheda SD
Da analisi statistica dei dati si ricava: Errore sistematico Errore statistico
11
Accorgimenti
Per ridurre: Errore sistematico
calibrazione Errore statistico
Riduzione banda segnaleAumento tempo acquisizione dell’ADCFiltro alpha-trimmed
12
Algoritmo Compass (1/2)
Per rilevare nord magnetico, si ha
θ = arctan (mY / mX)
Sensor Board su piano xy
Altrimenti tilt compensation(calcolo inclinazione Sensor Board)
13
Algoritmo Compass (2/2)
θ = arctan (Y / X)
X = mX ·cos(φ) + mY ·sin(φ) ·sin(ρ) - mZ ·sin(φ) ·cos(ρ)
Y = mY ·cos(ρ) + mZ ·sin(ρ)
14
Algoritmo INS (1/2)
15
Algoritmo INS (2/2)
ωB(t) C(t) aG(t) = C(t) · aB(t)
vG(t+δt) = vG(t) + δt · (aG(t) - gG)
sG(t+δt) = sG(t) + δt · vG(t)
16
Risultati
Algoritmo Compass: OK, con precisione di ± 0.3°
Algoritmo INS: Errore crescente nel tempo,
con drift di 5.5 m dopo 60 secondi
17
Conclusioni
Per migliorare algoritmo INS