SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV

Pagina creata da Samuele Orlando
 
CONTINUA A LEGGERE
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Corso di Laurea in Ingegneria                                  Corso di Sistemi Operativi
Informatica, Elettronica e delle Telecomunicazioni                            A. A. 2012 - 2013

                              SISTEMA OPERATIVO ANDROID

                              Interfacce di comunicazione
                                        Sensori
                                    Android@Home
                                       Google TV

                                             Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi
    A.A. 2012/13                Interfacce di comunicazione
    DEI - Politecnico di Bari

   USB
   Wi-Fi
   Bluetooth
   NFC (Near-Field Communication)
                                 NFC                           Bluetooth
RFID compatible                  ISO 18000-3                   active
Standardisation body             ISO/IEC                       Bluetooth SIG
Network Standard                 ISO 13157 etc.                IEEE 802.15.1
Network Type                     Point-to-point                WPAN
Cryptography                     not with RFID                 available
Range                            < 0.2 m                       ~100 m (class 1)
Frequency                        13.56 MHz                     2.4–2.5 GHz
Bit rate                         424 kbit/s                    2.1 Mbit/s
Set-up time                      < 0.1 s
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi           Interfacce di comunicazione:
    A.A. 2012/13
    DEI - Politecnico di Bari               USB

   Android supporta differenti periferiche e accessori USB attraverso due modalità:
   USB accessory mode
    L’hardware USB esterno opera come host USB. Questi dispositivi devono essere
    compatibili con Android accessory communication protocol.
    Es: docking stations, card readers.
   USB host mode
    Il dispositivo Android opera come host. Questi dispositivi possono interagire
    direttamente con applicazioni Android.
    Es: videocamere digitali, tastiere, controller di gioco.

      Quando un dispositivo Android è in
      modalità USB host, esso alimenta il
      bus ed enumera i dispositivi USB
      collegati.
      La modalità host USB è supportata
      in Android 3.1 e superiori.

                                      Android – Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi           Android Open Accessory
    A.A. 2012/13
    DEI - Politecnico di Bari      Development Kit

   permette di integrare dispositivi Android (al momento solo via Usb e
    Bluetooth) con qualsiasi altro dispositivo che implementi a bordo la logica di
    interfaccia definita
   un dispositivo USB (Android USB accessory) può interagire con un dispositivo
    Android in modalità accessory”
   i dispositivi Android USB sono progettati specificamente per connettersi
    sfruttando l’Android accessory protocol
   l’ADK prevede un’implementazione basata su piattaforma Arduino

                                 Android – Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi           Interfacce di comunicazione:
    A.A. 2012/13
    DEI - Politecnico di Bari               Wi-FI

   Android 4.0 (API level 14) permette ai dispositivi di connettersi direttamente
    tra loro via Wi-Fi, senza un access point intermedio
   Usando le WiFi Direct API, è possibile scoprire e connettersi ad altri dispositivi
    che supportano il Wi-Fi Direct
   Connessione veloce su distanze maggiori rispetto a Bluetooth
   Utile per le applicazioni che condividono molti dati tra utenti, quali giochi
    multiplayer o applicazioni per la condivisione di audio/video/immagini
   Le Wi-Fi Direct API sono composte da:
       I metodi che permettono di identificare, inviare richieste e connessioni ai peer
        definite nella classe WifiP2pManager.
       I listeners che gestiscono le notifiche derivanti da chiamate a metodi
        WifiP2pManager. Quando si chiamano i metodi WifiP2pManager, ogni metodo può
        ricevere uno specifico listener come parametro.
       Gli intents che rilevano eventi specifici Wi-Fi, come la perdita di una connessione
        cade o la rilevazione di un nuovo peer.

                                    Android – Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi             Interfacce di comunicazione:
    A.A. 2012/13
    DEI - Politecnico di Bari              Bluetooth

   Android supporta lo stack Bluetooth, che permette a differenti dispositivi di
    scambiare dati con una comunicazione senza fili.
   A livello applicativo è possibile utilizzare Bluetooth sfruttando le Android
    Bluetooth APIs. Queste APIs permettono di stabilire una connessione point-
    to-point o multipoint.
   Attraverso le Bluetooth APIs, un’applicazione Android può eseguire le
    seguenti operazioni:
       Effettuare scansioni alla ricerca di altri dispositivi Bluetooth
       Interrogare l’adattatore Bluetooth locale per creare associazioni con dispositivi
        Bluetooth rilevati
       Stabilire una connessione attraverso un servizio di service discovery
       Trasferire dati da/verso altri dispositivi
       Gestire connessioni multiple
   Due tipologie di permessi per l’utilizzo delle APIs nelle applicazioni
           BLUETOOTH: richiedere o accettare una connessione, trasferire dati;
           BLUETOOTH_ADMIN: effettuare il device discovery, modificare le impostazioni Bluetooth

                                        Android – Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi               Interfacce di comunicazione:
    A.A. 2012/13
    DEI - Politecnico di Bari                    NFC

   Near Field Communication (NFC) è una tecnologia a corto raggio senza fili (
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi               Interfacce di comunicazione:
    A.A. 2012/13
    DEI - Politecnico di Bari               NDEF Record

   I dati in formato NDEF sono incapsulati in messaggi detti NdefMessage contenenti uno
    o più NdefRecord.
   Ogni NDEF record è composto da header e payload
                  Identifier: ID univoco del record.
                  Type: descrive il tipo record.
                  Payload: il dato reale da leggere o scrivere.

NB: Poiché un messaggio NDEF può contenere più record NDEF non è detto che l’intero
payload sia nel primo record NDEF del messaggio.

                                          Android – Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi
    A.A. 2012/13                               Sensori (1/3)
    DEI - Politecnico di Bari

   Monitorare i cambiamenti nella posizione del dispositivo e il movimento
   Determinare le condizioni ambientali, quali temperatura, pressione, umidità e
    livello di illuminazione
   È possibile accedere a questi sensori e acquisire i dati grezzi del sensore
    mediante l’Android Sensor Framework
   Classi e interfacce che consentono di:
                  Determinare quali sensori sono disponibili su un dispositivo
                  Determinare le capacità di un singolo sensore, come ad esempio il suo range
                   massimo, produttore, requisiti di alimentazione e risoluzione
                  Acquisire dati grezzi del sensore e definire il rate minimo a cui si acquisiscono i
                   dati
                  Attivare e disattivare il listener che identifica i cambiamenti del sensore

                                          Android – Giuseppe Loseto
SISTEMA OPERATIVO ANDROID - Interfacce di comunicazione Sensori Android@Home Google TV
Sistemi Operativi
    A.A. 2012/13                           Sensori (2/3)
    DEI - Politecnico di Bari

   L’Android sensor framework è una parte del package android.hardware ed include le
    seguenti classi ed interfacce:
          SensorManager
           Questa classe contiene i metodi per per accedere ad un sensore ed acquisire dei
           dati. Contiene inoltre delle costanti di riferimento utili per modificare le impostazioni
           per le operazioni di acquisizione.
          Sensor
           Crea un’istanza di un sensore specifico.
          SensorEvent
           Classe utilizzata per definire un evento generato da un sensore. Ogni evento
           include i dati grezzi letti dal sensore, il tipo di sensore che lo ha generato,
           l’accuratezza dei dati ed il timestamp associato all’evento.
          SensorEventListener
           Usato per ricevere delle notifiche quando i dati provenienti dal sensore o la sua
           accuratezza cambiano.

                                      Android – Giuseppe Loseto
Sistemi Operativi
A.A. 2012/13                           Sensori - Esempio
DEI - Politecnico di Bari

mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);

 public void onSensorChanged(SensorEvent event)
      {
           // alpha is calculated as t / (t + dT)
           // with t, the low-pass filter's time-constant
           // and dT, the event delivery rate

                     final float alpha = 0.8;

                     gravity[0] = alpha * gravity[0] + (1 - alpha) * event.values[0];
                     gravity[1] = alpha * gravity[1] + (1 - alpha) * event.values[1];
                     gravity[2] = alpha * gravity[2] + (1 - alpha) * event.values[2];

                     linear_acceleration[0] = event.values[0] - gravity[0];
                     linear_acceleration[1] = event.values[1] - gravity[1];
                     linear_acceleration[2] = event.values[2] - gravity[2];
           }

                                     Android – Giuseppe Loseto
Sistemi Operativi
         A.A. 2012/13                                    Sensori (3/3)
         DEI - Politecnico di Bari

Sensor                               Type           Description

TYPE_ACCELEROMETER                   Hardware       Measures the acceleration force in m/s2 that is applied to a device on all three physical axes.

TYPE_AMBIENT_TEMPERATURE             Hardware       Measures the ambient room temperature in degrees Celsius (°C).
                                     Software or    Measures the force of gravity in m/s2 that is applied to a device on all three physical axes (x,
TYPE_GRAVITY
                                     Hardware       y, z).
                                                    Measures a device's rate of rotation in rad/s around each of the three physical axes (x, y, and
TYPE_GYROSCOPE                       Hardware
                                                    z).
TYPE_LIGHT                           Hardware       Measures the ambient light level (illumination) in lx.
                                     Software or    Measures the acceleration force in m/s2 that is applied to a device on all three physical axes
TYPE_LINEAR_ACCELERATION
                                     Hardware       (x, y, and z), excluding the force of gravity.

TYPE_MAGNETIC_FIELD                  Hardware       Measures the ambient geomagnetic field for all three physical axes (x, y, z) in μT.

TYPE_ORIENTATION                     Software       Measures degrees of rotation that a device makes around all three physical axes (x, y, z).

TYPE_PRESSURE                        Hardware       Measures the ambient air pressure in hPa or mbar.

                                                    Measures the proximity of an object in cm relative to the view screen of a device. This sensor
TYPE_PROXIMITY                       Hardware
                                                    is typically used to determine whether a handset is being held up to a person's ear.

TYPE_RELATIVE_HUMIDITY               Hardware       Measures the relative ambient humidity in percent (%).
                                     Software or    Measures the orientation of a device by providing the three elements of the device's rotation
TYPE_ROTATION_VECTOR
                                     Hardware       vector.
                                                    Measures the temperature of the device in degrees Celsius (°C). This sensor implementation
TYPE_TEMPERATURE                     Hardware       varies across devices and this sensor was replaced with the TYPE_AMBIENT_TEMPERATURE
                                                    sensor in API Level 14

                                                   Android – Giuseppe Loseto
Sistemi Operativi
     A.A. 2012/13                Android Activity Recognition
     DEI - Politecnico di Bari

    API che permettono al sistema di riconoscere se l’utente è fermo o in
     movimento
    Presentate nel corso del Google I/O 2013, fanno parte delle Google Play
     services APIs
            Funzionalità non presenti nativamente nella piattaforma Android
            Aggiungono una serie di servizi aggiuntivi implementati da Google
    Non viene utilizzato il GPS, ma unicamente i sensori pre-installati nel
     dispositivo, come l’accelerometro
    Anche per questa funzionalità occorre abilitare il relativo permesso
    
Developer Guide:
http://developer.android.com/training/location/
activity-recognition.html

                                      HTML - Floriano Scioscia
Sistemi Operativi
   A.A. 2012/13                   Android@Home
   DEI - Politecnico di Bari

 Presentato durante Google I/O 2011
 Architettura per ambienti domestici basata su device
  Android connessi con nuovi servizi Google
 Internet of Things vision, un trend in rapida evoluzione in
  cui gli oggetti del mondo reale sono collegati ad Internet

                               Android – Giuseppe Loseto
Sistemi Operativi
    A.A. 2012/13                  Project Tungsten
    DEI - Politecnico di Bari

   Sistema Hi-Fi basato su Android OS
   Comandabile a distanza attraverso un tablet Android
   Supporto a NFC (Near-Field Communication)
   Collegamento alla libreria cloud di Google Music (beta) e
    riproduzione in streaming di contenuti musicali

                                Android – Giuseppe Loseto
Sistemi Operativi
  A.A. 2012/13                Android-based Devices
  DEI - Politecnico di Bari

 Samsung Zipel Smart Oven
     forno a microonde utilizzabile attraverso un’applicazione dedicata
      per smartphone Android
     presentato durante CES 2012

 In futuro le fotocamere digitali Samsung potrebbero
  utilizzare un sistema operativo basato su Android

                               Android – Giuseppe Loseto
Sistemi Operativi
   A.A. 2012/13                       Google TV
   DEI - Politecnico di Bari

 piattaforma Smart TV sviluppata da Google, Intel, Sony e Logitech
 inizialmente lanciato il 6 ottobre 2010, con i dispositivi ufficiali Sony e
  Logitech
 integra Android e la versione Linux del browser Google Chrome per
  creare overlay interattivi
 add-on per SDK Android, che permette a tutti gli sviluppatori di creare
  applicazioni per la Smart TV Google
 nuovi partner tra cui LG e Samsung

                               Android – Giuseppe Loseto
Sistemi Operativi
        A.A. 2012/13                     Google TV – Version History
        DEI - Politecnico di Bari

Version           Release Date      Android Version     Devices Supported       Version Improvements

                                                        Included in Sony
  2.1                  2010-10            2.1                                   Original version.
                                                        Internet TV devices.

                                                        For Sony Internet TV
                                                        devices NSZ-GT1, NSX-
  2.1
                     2011-10-23           2.1           24GT1, NSX-32GT1,
Update 1
                                                        NSX-40GT1 and NSX-
                                                        46GT1.

                                                        Released for Logitech
  3.1                2011-12-12           3.1                                   Updated to Android 3.1
                                                        Revue devices

                                                        For Sony Internet TV    Improved stability and performance of the
                                                        devices NSZ-GT1, NSX-   Android operating system. Update the
  3.2                2012-03-06           3.2           24GT1, NSX-32GT1,       system to Android 3.1 platform. Adds
                                                        NSX-40GT1 and NSX-      Bluray 3D support for the NSZ-GT1 device.
                                                        46GT1.                  Updates in Chrome and Flash.

  3.2
                     2013-05-15          4.2.2                     ---          Announced at Google I/O 2013
2nd Gen

                                                 Android – Giuseppe Loseto
Sistemi Operativi           Google TV Internet Player
A.A. 2012/13
DEI - Politecnico di Bari     from Sony (NSZ-GS7)

                              Android – Giuseppe Loseto
Sistemi Operativi
  A.A. 2012/13                           Google TV
  DEI - Politecnico di Bari

 Android Apps
     applicazioni basate su Android
 Web Apps
     siti web ottimizzati per Google TV
 Multi-screen Apps
     utilizzano uno smartphone Android come controller
     sfruttano i protocolli
              Pairing Protocol, usato per il riconoscimento tra client e server su una
               rete locale
              Anymote Protocol, permette ad applicazioni in esecuzione su
               dispositivi remoti di inviare comandi (eventi) a dispositivi Google TV

                                  Android – Giuseppe Loseto
Sistemi Operativi
  A.A. 2012/13                Android per l’Automotive
  DEI - Politecnico di Bari

 Dispositivi per In-vehicle Infotainment (IVI) basati su
  Android
 Collaborazione tra Google e General Motors
 Volt, la nuova berlina "elettrica" di Chevrolet potrà contare
  su una stretta integrazione fra il sistema digitale di bordo
  "OnStar" e i dispositivi mobile basati su Android
     l'utente-guidatore potrà indicare il luogo di destinazione e ricevere
      istruzioni dettagliate visualizzate su mappe fornite da Google

                                Android – Giuseppe Loseto
Sistemi Operativi
   A.A. 2012/13                      Riferimenti
   DEI - Politecnico di Bari

 NFC Forum Specifications
  http://www.nfc-forum.org/specs/
 How to develop for Google TV?
  https://developers.google.com/tv/?hl=it-IT

                               Android – Giuseppe Loseto
Puoi anche leggere