venerdì 27 febbraio 2015

Spark.io Photon - una particella di Cloud

Ci sono secondo me importanti motivi per cui, chi si interessa di Internet delle Cose - o IoT, debba necessariamente conoscere il Photon. Esplorandolo, ogni suo aspetto sembra parlare di cloud. E' come se tutti i concetti dell' IoT si siano concentrati nel dar vita a questo concentrato di tecnologia. Val la pena averne una panoramica, anche attraverso una sola conoscenza virtuale - per ora (vi spiego poi il perchè...)



(tutti le informazioni e le immagini di questo post sono prese dal sito spark.io)

Partiamo dal descriverlo un po'. Il Photon è una scheda embedded delle dimensioni lineari di 2 cm. x 3,73 cm. In così poco spazio trovano posto un microcontrollore STM32F205, con processore a 120MHz Cortex M3 architettura ARM, 1 MB di memoria flash e 128 KB di RAM e un modulo WiFi basato su chip Broadcom BCM 43362.
La schedina presenta pin I/O digitale (GPIO), pin analogici (ADC e PWM) e, multiplexati, UART seriale e SPI. Da un punto di vista delle interfacce esterne, quindi, è abbastanza simile ad Arduino.
Da notare che pur avendo processore e memoria indirizzabile, non si tratta di una macchina con sistema operativo generale, come avviene per esempio per Raspberry e Arietta.
Difatti il Photon non è una scheda embedded ma, come definita da quelli di Spark.io, è un Wifi Development Kit, ovvero un modulo che abilita l'interazione via WiFi con l'oggetto con cui esso è collegato. E quindi 100% orientato all'interazione oggetti/cloud. IoT pura!

Il comportamento del Photon è definito da un firmware e la programmazione dell'applicazione consiste proprio nel modificare tale firmware per fargli fare ciò che vogliamo.
La modalità di programmazione del firmware è anch'essa orientata al cloud. Utilizzando la IDE on line sul sito di spark.io o l'applicazione IDE desktop, si programma il comportamento della scheda utilizzando un linguaggio, anch'esso molto simile ad Arduino, basato su Wiring.

La IDE Web di spark.io
Attraverso la IDE si possono usare tutte le librerie, di base o contrinuite per realizzare l'applicazione.
La compilazione avviene attraverso il cloud: il codice viene caricato sul cloud di spark.io, compilato opportunamente e poi scaricato direttamente sul Photon attraverso la sua connessione WiFi al web.
Questo significa che si può programmare il Photon anche in remoto, cioè senza averlo fisicamente connesso e presemte in prossimità. Questo significa che non è necessario rimuoverlo dall'oggetto a cui è connesso per riprogrammarlo.
Utilizzando la IDE desktop, il firmware viene scaricato sul PC e può poi essere caricato sul Photon successivamente.

Sul sito di spark.io è disponibile anche una libreria SDK Javascript che permette di includere all'interno di pagine web porzioni di codice che possono interagire attivamente con il Photon.
Questa è una grande comodità, perchè in genere, quando si usano schede embedded general purpose, tutta la programmazione dell'infrastruttura di comunicazione, dell'interazione, nonchè la configurazione di opportuni middleware, sono a carico dell'utilizzatore.
Questo è un'altra indicazione di come Photon è stato ideato pensando principalmente al cloud.

Sono poi disponibili, sempre su spark.io, alcuni shield che interfacciano il Photon per gli usi più comuni (general purpose e a relè)

Ultima circostanza interessante è il modo in cui gli sviluppatori di Photon hanno lanciato questa idea: attraverso KickStarter! C'è quindi un concentrato di innovazione anche nei modi in cui affrontare il lancio del prodotto. E, a giudicare dalla rapidità con cui hanno raccolto il sostegno da parte dei sottoscrittori, l'idea è stata vincente.
Al punto che le richieste hanno praticamente superato ogni aspettativa e dopo un primo lotto, gli esemplari del Photon sono ora esauriti. Le prossime spedizioni sono previste a maggio 2015!

Questo è il motivo per cui questa presentazione per ora è solo virtuale, come dicevo. Anche io ho preordinato un Photon, da Gennaio... Ma credo che varrà la pena attendere!

Nessun commento:

Posta un commento