Libreria di rilevazione scenari di movimento
Angelo Santarella
Sommario
• Introduzione ai sensori usabili dalla piattaforma Android
• Rilevazioni scenari libreria• Progettazione della libreria• Applicazione di esempio• Sviluppi futuri
Sommario
• Introduzione ai sensori usabili dalla piattaforma Android
• Rilevazioni scenari libreria• Progettazione della libreria• Applicazione di esempio• Sviluppi futuri
Sensori
La maggior parte dei sensori controllabili dall’SDK Android sono nella classe android.hardware.Sensor
Sensori
Molti sensori usano un sistema di assi tridimensionale per effettuare le proprie rilevazioni
Sensori
• Sensor.TYPE_MAGNETIC_FIELDRestituisce i valori in micro-Tesla(uT) del campo magnetico sui 3 assi tridimensionali del dispositivo
• Sensor.TYPE_GYROSCOPERestituisce valori in radiandi/secondo e misura il grado di rotazione sui 3 assi X, Y e Z. Rotazione positiva in senso antiorario.
Sensori
• Sensor.TYPE_PROXIMITYIl sensore di prossimità restituisce in centimetri il valore della sua distanza da un oggetto vicino.
• Sensor.TYPE_LIGHTRestituisce il livello di illuminazione ambientale in unità SI lux (lx) 1lux= 1lumen/m²es: ufficio illuminato secondo normativa europea= 500 lx;
32 Klx < sole < 100 Klx
Sensori
• Sensor.TYPE_ROTATION_VECTORIl vettore di rotazione rappresenta l’orientamento del dispositivo come una combinazione di una angolo e un asse
• Sensor.TYPE_ORIENTATIONTutti i valori sono gli angoli in gradi.-values [0]: Azimuth, angolo tra la direzione nord magnetico e l'asse
y, intorno all'asse z (da 0 a 359). Es: 0 = Nord, 90 = Est, 180 = Sud, 270 = West-values[1]: Pitch, rotazione intorno all'asse x (-180 a 180), con valori
positivi quando l'asse Z si muove il verso l'asse y.-values[2]: Roll, la rotazione intorno all'asse y (da -90 a 90), con valori positivi quando l'asse x si sposta verso l’asse z.
Sensori
• Sensor.TYPE_ACCELEROMETERTutti i valori sono espressi in unità SI (m / s ^ 2)valori [0]: Accelerazione meno Gx su l'asse xvalori [1]: Accelerazione meno Gy sull'asse yvalori [2]: Accelerazione meno Gz su l'asse zUn sensore di questo tipo di misura l'accelerazione applicata al dispositivo ( Ad ).Quando il dispositivo è fermo, nell'accelerometro si legge una grandezza di g = 9,81 m / s^2Allo stesso modo, quando il dispositivo è in caduta libera e quindi sta pericolosamente accelerando verso terra a 9,81 m / s ^ 2, il suo accelerometro legge in una magnitudo pari a 0 m / s ^ 2.
Sensori
• Sensor.TYPE_GRAVITYIndica il vettore tridimensionale su cui agisce la gravità.
• Sensor.TYPE_LINEAR_ACCELERATIONVettore tridimensionale che indica l'accelerazione lungo ogni asse dispositivo, e non include la gravità. Tutti i valori sono in m/s^2. Il sistema di coordinate è lo stesso che viene utilizzato dall’accelerometro.
Quali sono i veri sensori?
Inseriti in Gingerbread
Sensor Fusion
Veloce esempio di utilizzo sensori nel codice
Sommario
• Introduzione ai sensori usabili dalla piattaforma Android
• Rilevazioni scenari libreria• Progettazione della libreria• Applicazione di esempio• Sviluppi futuri