Per Lorenzo Maiorfi (Help Demo IoT)

Richieste di supporto in merito a problemi su hardware e firmware

28/01/2013 11:53:39
Gravatar
Totale Interventi 1

Per Lorenzo Maiorfi (Help Demo IoT)

Buongiorno Lorenzo,

ho assistito al tuo intervento nell'ambito della Microsoft Embedded Conference a Napoli sabato scorso, vorrei avere una ri-spiegazione della demo IoT da te mostrata, in particolare in merito alla differenza in termini di risposta tra la piattaforma Cosm e l'ultima da te mostrata (come si chiama?) con la quale si riusciva a raggiungere un 'quasi real.time'. In quel momento ero un po' assonnato (reduce da una nottata su libri di matematica) e non mi sono concentrato su quel particolare che invece era molto importante, anche stando a un metro di distanza da te.

Inoltre vorrei sapere quei piccoli moduli che venivano comandati (che sembravano qualcosa di simile a moduli di Gadgeteer ed erano "marchiati" TinyCLR), dove c'era il led che si accendeva ed altre funzioni, cosa sono, se ci sono progetti per costruirli o sono già reperibili in commercio. Non mi riferisco al DangerModule per Netduino, ma a quei moduletti rossi che stavano su quella struttura in plexiglass.....

Per la cronaca sono quello che ti ha chiesto a cosa serviva esattamente il DangerModule...

Ti ringrazio per l'attenzione e aspetto una tua risposta, inoltre gradirei un tuo indirizzo di posta elettronica per futuri contatti, sempre se è disponibile.

Spero di non essere stato troppo 'invadente' e con stima e rispetto ti saluto e spero di assistere presto a tue nuove dimostrazioni

Danilo De Riso - Napoli

 

28/01/2013 13:53:56
Gravatar
Totale Interventi 75

Re: Per Lorenzo Maiorfi (Help Demo IoT)

Ciao.

Dunque, nell'ultima demo abbiamo velocemente preso visione di una soluzione che avevo già descritto in un post del blog di questo sito, in particolare qui.

In sintesi, si tratta di una soluzione in cui, aggregando l'uso di un'infrastruttura per la gestione della comunicazione "push" in applicazioni web (SignalR in questo caso), di un firmware la cui prinicpale responsabilità è quella di essere client TCP di un listener remoto (che incidentalmente è in esecuzione all'interno dello stesso server che espone l'applicazione web, anche se in generale è possibile che siano diversi) e di un framework UI per applicazioni HTML/JS (nel nostro caso Twitter Bootstrap), abbiamo ottenuto che le interazioni locali sul device siano broadcastate a tutti i client in tempo reale, che gli interventi remoti sul device siano recepiti in tempo reale e le eventuali variazioni di stato dello stesso siano anch'esse broadcastate a tutti i client in tempo reale.

Dirò di più, anche il feedback che un client vede a seguito delle azioni svolte da remoto sul dispositivo (ad es. il pulsante blu che diventa arancio fino a che lo si tiene premuto, accendendo un led sul dispositivo) è in realtà il risultato della notifica broadcastata della variazione di stato, inviata effettivamente SOLO se il device ha dato un suo "ack" al processing del comando; in altri termini, se il pulsante diventa arancio significa (se il feedback del firmware è attendibile) che il device ha effettivamente attivato quell'uscita digitale.

Il modello di COSM e ThingSpeak è diverso da un punto di vista architetturale: in entrambi i casi ci sono dei servizi REST/JSON e REST/CSV che sono in ascolto di chiamate HTTP di tipo PUT da parte dei dispositivi. Tali chiamate aggiornano il database dei datastream poi visualizzato (ed esposto verso applicazioni terze dallo stesso servizio REST) dalle varie dashboard web. Il modello di chiamata inversa (dal web al device) è reso possibile (meglio in Cosm che in ThingSpeak) se si disponde di un endpoint HTTP di tipo server sul proprio dispositivo (magari mediante la mediazione di un servizio di relaying quale Yaler.net, oppure uno custom basato ad esempio su un canale TCP/UDP). In questo caso è possibile definire un"trigger", che una volta attivato (ad es. a seguito di un'interazione con la dashboard web) effettuerà una chiamata (tipicamente PUT o POST) verso l'endpoint definito, passando tutte le informazioni di contesto necessarie.

Per entrambe le direzioni di comunicazione, la frequenza permessa (sia per motivi commerciali che tecnici) da questi due servizi è indicativamente dell'ordine di un'azione ogni 10-15 secondi.

Per qualsiasi tema di interesse generale puoi ovviamente far riferimento a questo forum, mentre per eventuali comunicazioni personali mi puoi raggiungere ai contatti che trovi sul nostro sito http://www.innovactive.it.

Saluti,

Lorenzo

28/01/2013 13:57:22
Gravatar
Totale Interventi 75

Re: Per Lorenzo Maiorfi (Help Demo IoT)

...dimenitcavo: i moduletti rossi fanno parte di un kit GHI, a quanto so oramai fuori produzione, che trovi sotto forma di Fez Ultimate Kit o come (più convenientemente) E-Block Kit, in vendita ad es. qui.