It's not a bug, it's a feature

Freedomotic: Il Framework per l’automazione e l’IoT

Di recente, QUI,  vi abbiamo parlato di Reality Editor, un’app sviluppata al MIT che permette all’utente di riprogrammare come vuole i suoi oggetti Open Hybrid, ma oggi vi vogliamo parlare di una community tutta Italiana, che sta realizzando un’incredibile piattaforma per la domotica: Freedomotic.

Cos’é Freedomotic

Freedomotic é un framework distribuito open source per l’IoT e l’automazione in generale, multipiattaforma e pensato per la scalabilità.

Il progetto é nato per rispondere ad una reale esigenza sorta nell’ambito di un programma di ricerca presso l’Università di Trento: occorreva un framework in grado di interconnettere vari progetti basati su reti di sensori, sviluppati in linguaggi di programmazione differenti e in tempi diversi, dando vita ad una piattaforma unificata per il testing, la valutazione e produzione di demo in grado di mostrare l’interazione di tali sistemi.

In seguito, su iniziativa del suo fondatore Enrico Nicoletti, ha assunto una propria autonomia polarizzando intorno a sé una dinamica e appassionata comunità internazionale.

Si tratta di un progetto che ha già 5 anni di vita ed attualmente si rivolge alla home automation per mostrare al grande pubblico il potenziale e la flessibilità del servizio offerto.

 

Framework:
Il fulcro del progetto

Freedomotic è realizzato attraverso una serie di moduli cross-language a basso accoppiamento che comunicano attraverso un middleware message oriented, ovvero scambiandosi dei messaggi.
In questo modo si fornisce la possibilità di sviluppare il proprio modulo, collegarlo a Freedomotic e quindi di usufruire di tutte le altre funzionalità messe a disposizione dalle componenti già presenti nel sistema, indipendentemente dallo specifico linguaggio di programmazione utilizzato per l’implementazione del singolo modulo.
Ad esempio si potrà programmare un modulo Arduino per la rilevazione di movimento e farlo interagire con un sistema per la gestione delle luci sviluppato con Raspberry Pi, collegando entrambi a Freedomotic: riducendo praticamente a zero lo sforzo in termini di programmazione del codice.

La parola chiave é framework.

Freedomotic aspira ad avere lo stesso ruolo e lo stesso impatto, sebbene in ambito diverso, dei CMS (Drupal, WordPress o Joomla) nello sviluppo web.
In sostanza fornisce gli strumenti per creare il proprio software di automazione su misura, assolutamente personalizzato in base a gusti ed esigenze.
Non il classico prodotto preconfezionato, ma una sorta di Lego con cui sperimentare e creare.

Insomma un modo per liberare la creatività degli automation maker.

 

Caratteristiche e Funzionalità

  1. Supporto multilingue (circa 20 tra cui l’italiano).
  2. Multi-Threading :
    Gestione di più ambienti, una gestione ottimizzata delle automazioni, un meccanismo di P2P che consente di far girare più istanze contemporaneamente per bilanciare il carico e garantire la sicurezza in caso di failure.
  3. Il framework ha una conoscenza semantica della topologia degli ambienti (zone, collegamenti tra le stesse) e della dislocazione degli oggetti al loro interno (luci in cucina, TV in salone ecc).
  4. Protocol-independent :
    I moduli modificano le caratteristiche degli oggetti reali indipendentemente dalla tecnologia utilizzata per il loro funzionamento.
    Questo permette di simulare il comportamento, ad esempio, delle luci (accensione, spegnimento, regolazione), senza dover disporre di un impianto reale.
    Successivamente basterà “linkare” gli oggetti virtuali con quelli reali, dopo aver scaricato il plugin specifico per la tecnologia dell’impianto.
  5. Creazione di nuovi Plugin:
    La struttura modulare permette di estenderne le funzionalità. Sarà l’utente finale a decidere cosa installare nel proprio sistema.
  6. La possibilità di combinare reti di sensori, attuatori e sistemi di supervisione può offrire un valore aggiunto in ogni segmento di mercato: dalle case private, agli ambienti pubblici fino alle città oggi particolarmente attente all’ottimizzazione delle poche risorse disponibili.

 

Target e collaboratori: dal mondo accademico all’industria

Attualmente Freedomotic vanta migliaia di download in 120 paesi del mondo.

In questi anni Freedomotic è stato scelto per diversi lavori accademici in Italia e all’estero in particolare nell’ambito dell’Ambient Assisted Living, ma anche della Green Economy.

Attualmente è in atto una collaborazione con l’Università del Sannio ed Informatici senza Frontiere per lo sviluppo di un’app dedicata alle persone non vedenti/non udenti per il controllo della propria casa.

Tutto il materiale è pubblicamente consultabile su http://freedomotic.com/wiki/academic-papers-thesis.

Anche il mondo industriale ha guardato e guarda a Freedomotic: Telecom Italia ha presentato un progetto basato sul framework al W3C’s “Web of Things” workshop di Berlino nel 2014, di cui un documento completo è consultabile all’indirizzo http://www.w3.org/2014/02/wot/papers/goix.pdf

Il laboratorio Jol S-Cube di Milano ha sviluppato un plugin per interconnettere Freedomotic con la piattaforma Energy@Home.
Ulteriori dettagli qui e qui.

Ecco qui una lista di tutti gli ambiti in cui Freedomotic ha avuto successo:
https://github.com/freedomotic/freedomotic/wiki/Who-is-using-Freedomotic

 

Dove trovare informazioni e scaricare il software

Il punto di partenza é senza dubbio il sito ufficiale freedomotic.com e i vari social Networks.
Inoltre è presente anche un canale Youtube per guide e demo.

Sì può scrivere una mail a info@freedomotic.com o andare nel gruppo italiano a questo link: https://groups.google.com/forum/#!forum/freedomotic-it.

Tutto il codice sorgente, scritto in Java e distribuito con licenza GPL v2, é disponibile su GitHub https://github.com/freedomotic/freedomotic/.

 

Come contribuire

Ci auguriamo che in molti vogliano darci una mano o semplicemente approfondire l’argomento.
Ovviamente l’appello é rivolto anche ad aziende che volessero investire su di noi o mettere a disposizione hardware per agevolare il nostro lavoro.

Attualmente é la community a prendersi cura dello sviluppo e del rilascio di nuove versioni. Non abbiamo finanziamenti quindi dedichiamo il nostro tempo libero talvolta anche di notte e nei weekend), mettendo a disposizione le nostre competenze tecniche e la passione.

Freedomotic é open e siamo sempre alla ricerca di nuovi collaboratori, non solo sviluppatori.
Ci occorrono designer, traduttori, professionisti pronti a condividere le proprie idee, ma anche semplici appassionati disponibili a fare da tester e fornirci feedback costruttivi.

In fin dei conti lo spirito dell’open source risiede proprio nella condivisione, nello scambio che porta ad una comune crescita.

 

Published by
Manuel Occorso