Home
Accesso / Registrazione
 di 

Freescale Sensor and Location Platform

Freescale Sensor and Location Platform

A partire dalla sua versione più recente, Windows 7, il sistema operativo della casa di Redmond ha aggiunto una funzionalità nuova ed importante, la cosiddetta "Windows Sensor and Location Platform". Lo scopo di questo articolo è quello di mostrare in cosa consiste questa piattaforma, per quali scopi è stata introdotta, e come Freescale Semiconductor sia in grado di soddisfare la domanda di prodotti hardware in grado di supportarla tramite il suo "Sensor Development Kit".

La Windows Sensor and Location Platform ha come obiettivo principale quello di adattare ogni computer (tipicamente, ma non soltanto, i portatili) alle condizioni ambientali in cui esso è chiamato ad operare. Ma come può un computer adattarsi all'ambiente circostante? Un modo semplice ed immediato è quello di basarsi su dei sensori affidabili ed integrati (sia a livello hardware che software). Un ricevitore GPS, ad esempio, è in grado di fornire delle informazioni molto precise relativamente alla posizione corrente (espressa dalla coppia di coordinate latitudine e longitudine), adattando alcune impostazioni o applicazioni alla specifica area geografica (potrebbe ad esempio rendere disponibili le previsioni meteorologiche riferite al luogo esatto in cui ci si trova). La funzionalità di trasmissione wireless, in modo analogo, può essere utilizzata per determinare la posizione corrente applicando delle tecniche di triangolazione.

Ciò avviene generalmente sfruttando la funzionalità WiFi oppure, più in generale, tramite la WWAN radio (Wireless Wide Area Network, come avviene per HSDPA, UMTS, WIMAX, e così via). Altri tipi di sensori sono i sensori di luce: misurando la quantità di luce che colpisce lo schermo di un portatile, si è in grado di aggiustare automaticamente la luminosità ed il contrasto al fine di ottenere la migliore qualità di immagine possibile (l'impostazione automatica può anche avvenire seguendo particolari "profili", associati alle specifiche preferenze del singolo utilizzatore).

Qualcuno potrebbe affermare che funzioni di questo tipo siano già disponibili da tempo, ma ciò è vero fino a un certo punto. Infatti, su architetture come quella di un normale computer, questi sensori sono stati utilizzati affidandosi a protocolli e/o interfacce non sempre standard, spesso di tipo proprietario, e privi di una reale integrazione a livello hardware e software. Al contrario, la Windows Sensor and Location Platform utilizza uno standard per integrare con il sistema operativo i sensori e i dispositivi per la localizzazione, fornendo anche un'interfaccia di programmazione standard per lo sviluppo di applicazioni. I produttori hardware ora sanno come scrivere i driver per i dispositivi, utilizzando il tool di sviluppo Windows 7 WDK (Windows Development Kit). I progettisti software, dall'altro lato, sono ora in grado di scrivere applicazioni "location-aware" basate sull'utilizzo di sensori integrati tramite il tool di sviluppo Windows 7 SDK (Software Development Kit).

Uno sguardo alla Windows Sensor and Location Platform

In termini generali, un sensore può essere definito come un dispositivo atto a misurare una grandezza fisica e in grado di fornire un'informazione precisa e consistente riguardo il suo valore. Relativamente al nostro tipo di applicazione, saremo interessati solamente a quei tipi di sensori che convertono il valore misurato (ampiezza) in una grandezza di tipo elettrico (tensione oppure currente). I tipici sensori adottati per le applicazioni nel campo "Sensor and location" sono i seguenti:

  • sensori di luce ambiente (Ambient Light Sensor, o anche ALS)
  • sensori di posizione (location): ricevitore GPS, triangolazione tramite WiFi/cell tower, IP resolver
  • accelerometri, sensori di presenza umana, RFID

La Windows Sensor and Location Platform rappresenta una soluzione di tipo verticale in grado di gestire vari tipi di sensori garantendo nello stesso tempo la privacy e la sicurezza dei dati. La sua architettura è mostrata nell'immagine seguente:

I componenti principali di questa architettura sono i seguenti:

  • il Device Driver Interface (DDI): definisce un meccanismo standard utilizzato dai sensori per collegarsi al computer e per fornire informazioni ad altri sottosistemi. I Sensor Device Drivers vengono scritti dai produttori di sensori usando il modello di driver Windows Portable Devices (WPD), basato sul Windows User Mode Driver Framework (UMDF). Tutte queste tecnologie sono oggi molto stabili, per cui i progettisti di dirver software troveranno quest'attività molto familiare e non particolarmente complessa
  • le Sensor API: costituiscono un insieme di metodi, eventi, e proprietà per la gestione dei sensori collegati
  • le Location API: sono costruite sulle Windows Sensor API e forniscono un insieme di oggetti espressamente creati per le applicazioni di localizzazione (location)
  • lo User Control Panel: consente all'utente di selezionare i controlli e le impostazioni relative ai sensori collegati
  • controlli di sicurezza e privacy: fanno sì che l'accesso ai sensori sia regolato da precise regole ed autorizzazioni (funzioni del particolare livello utente)

Applicazioni del sensore di luce ambiente

Un'applicazione molto utile ed interessante della Windows Sensor and Location Platform è quella relativa alla gestione delle informazioni fornite dai sensori di luce ambiente. Chiunque tra noi abbia provato a lavorare all'aperto con un computer portatile avrà probabilmente avuto a che fare con qualche problema di leggibilità dello schermo, soprattutto quando la luce ambientale è molto intensa. Un'applicazione software può essere considerata "light aware" (letteralmente: consapevole delle condizioni di luce) quando essa utilizza le informazioni fornite da un sensore di luce ambiente per fornire il migliore livello di prestazioni in termini di leggibilità e comprensione del testo. I parametri tipici controllati da applicazioni di questo tipo sono il colore, il fattore di scala (la dimensione dei font), ed il contrasto. Per darvi un'idea, guardate le seguenti due immagini che mostrano lo stesso schermo di un portatile (nelle stesse condizioni di luce ambiente) con (prima immagine) e senza (seconda immagine) la funzionalità di "light-awareness".

La piattaforma hardware di Freescale per le soluzioni "Sensor and Location"

La piattaforma hardware di Freescale (la scheda "Flexis JM Badge Board") include vari tipi di sensori e microcontrollori Freescale come la MCU USB basata sul ColdFire MCF51JM128 (dotata di interfaccia digitale sia I2C che SPI), l'accelerometro a 3 assi MMA7260QT, l'integrato MC34673 per la carica delle batterie agli ioni di lio (Li-ion), ed il sensore di prossimità capacitivo MPR084. Le principali caratteristiche di cui è dotata la JM Badge Board si possono così riassumere:

  • microcontrollore di tipo ColdFire V1
  • alimentazione tramite porta USB o con batteria ricaricabile
  • interfaccia di tipo USB device
  • accelerometro a 3 assi
  • sensore di prossimità capacitivo con fino ad 8 punti di contatto
  • display a matrice di LED
  • slot per schede SD
  • buzzer di tipo magnetico

La scheda JM Badge Board può quindi essere alimentata tramite la batteria ricaricabile agli ioni di litio, oppure direttamente tramite l'interfaccia USB. Relativamente al discorso Sensor and Location, la JM Badge Board occupa una posizione di assoluto rilievo, dal momento che essa incorpora un sensore di prossimità capacitivo (l'MPR084 nell'ultima revisione della scheda), sensore di luce ambiente (a partire dalla revisione D), e un accelerometro a 3 assi.

Il sensore di prossimità capacitivo è in grado di rilevare le variazioni di capacità sui suoi elettordi e fornisce le informazioni relative allo stato dei contatti al microcontrollore (MCU) attraverso l'interfaccia I2C. Il sensore di luce ambiente fornisce invece in uscita un segnale analogico il quale viene successivamente misurato da un canale del convertitore analogico-digitale per quantificare il valore di luce che colpisce il sensore. L'accelerometro, infine, dispone di un'uscita analogica dedicata per ciascuno dei 3 assi, ed è anch'esso collegato ad uno dei canali di conversione analogico-digitale sull'MCU.

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 5 utenti e 51 visitatori collegati.

Ultimi Commenti