• Come un abito cucito su misura, i nostri progetti software uniscono le potenzialità di tecnologie innovative alle specifiche esigenze del cliente.

    Showcase progetti
  • Analizziamo e razionalizziamo con il cliente i processi e le attività della propria azienda, per poi seguirlo nella scelta delle giuste strategie IT da adottare.

    Le nostre competenze
  • Crediamo nelle potenzialità di un percorso formativo che unisca forti basi teoriche e metodologiche ad una continua applicazione pratica di quanto si apprende.

    Dettaglio dei corsi
  • Progettiamo e sviluppiamo sistemi e progetti basati su dispositivi mobile consumer (iPhone, Windows Phone 7 Series), industriali (Windows CE) e custom (basati su microcontrollori 8/16/32 bit).

    Approfondimenti
 

Anteprima di “Innovactive TwitPod”

July 30, 2010 22:05 by l.maiorfi

Stiamo realizzando un dispositivo embedded completamente dedicato a Twitter che presenteremo nelle pagine di PC Professionale del mese di Settembre. Per il momento non possiamo dire molto di più, ma possiamo farvi vedere qualche foto e un breve video, che trovate nel nostro canale YouTube qui.


IMG_0506 IMG_0508 IMG_0502 IMG_0501


Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Anteprima di “Innovactive TwitPod”

July 30, 2010 22:05 by l.maiorfi

Stiamo realizzando un dispositivo embedded completamente dedicato a Twitter che presenteremo nelle pagine di PC Professionale del mese di Settembre. Per il momento non possiamo dire molto di più, ma possiamo farvi vedere qualche foto e un breve video, che trovate nel nostro canale YouTube qui.


IMG_0506 IMG_0508 IMG_0502 IMG_0501


Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

"Internet Gardener", una serra domestica controllabile via Internet

June 29, 2010 18:16 by l.maiorfi

PlanciaChi come noi si occupa di "physical computing" è particolarmente sensibile agli stimoli che provengono dall'osservazione di un progetto che, pur realizzato da altri, riteniamo così intrigante da desiderare di averlo sviluppato noi; inevitabilmente questi stimoli trovano uno sfogo naturale nel tentativo di migliorare il progetto in questione.

Qualche mese fa, la nota rivista MAKE (magazine sul DIY,il fai-da-te a stelle e strisce) ha pubblicato il progetto di un dispositivo elettronico intelligente, denominato Garduino, in grado di monitorare lo stato di una coltivazione e di intervenire per ripristinare i valori desiderati di umidità, temperatura ed illuminazione delle colture.

Colpiti soprattutto dalla qualità dell'idea, ci siamo proposti di estendere il principio di funzionamento del Garduino, permettendo il monitoraggio ed il controllo dei parametri vitali di una piccola serra casalinga non solo attraverso il collegamento del dispositivo ad un PC (via USB), ma anche in una modalità completamente remotizzata in cui i segnali dei sensori ed i comandi degli attuatori vengono inviati, insieme allo streaming video di una ripresa "live" della pianta, attraverso Internet.

In questo post, ma soprattutto nel video contenuto nel DVD allegato a PC Professionale di Luglio, ci proponiamo di esaminare gli aspetti essenziali che hanno portato alla realizzazione del nostro "Internet Gardener".

Iniziamo dalla parte sensoristica: per poter supervisionare costantemente la qualità dell'ambiente circostante la coltivazione controllata, avevamo la necessità di rilevare tre grandezze fondamentali: la temperatura ambientale, il livello di illuminazione e l'effettiva umidità del terreno in cui è immersa la pianta. Per il rilevamento della temperatura abbiamo utilizzato un sensore analogico molto economico che fornisce una tensione di uscita proporzionale alla temperatura espressa in gradi centigradi (nella misura di un centesimo di Volt per grado centigrado). Per avere una misura istantanea della luminosità dell'area occupata dal fogliame della pianta, abbiamo invece utilizzato un foto-resistore, ossia un trasduttore, sensibile alla radiazioni luminose, in cui la resistenza ai propri capi diminuisce all'aumentare della luminosità dell'ambiente in cui è immerso. Per rilevare invece il livello di umidità del terreno abbiamo utilizzato la misura indiretta della conducibilità elettrica, ottenuta a sua volta misurando la resistenza elettrica tra due chiodi infilati nel terreno, collocati in modo tale che le radici della pianta siano approssimativamente lungo la linea che unisce i due chiodi.

Gli attuatori della serra dovevano di conseguenza poter attivare dei dispositivi in grado di alterare le tre grandezze monitorate, creando così un sistema di controllo di tipo "closed loop", ossia in cui i sensori forniscono il feedback sulla base del quale vengono attivati e disattivati gli attuatori. Per agire sulla temperatura abbiamo previsto che la serra fosse collocata all'interno di un ambiente di per se' più freddo di quanto richiesto dalla pianta; in questo modo l'aumento della temperatura viene provocato dall'accensione di un riscaldatore, una lampada ad infrarossi da rettilario nel nostro prototipo, mentre la diminuzione dal suo spegnimento. Per agire sull'illuminazione, analogamente, abbiamo previsto che l'attuatore agisse sull'accensione e sullo spegnimento di una comune lampada che proiettasse la propria luce sulle foglie della pianta. Per aumentare il livello di umidità del terreno abbiamo infine utilizzato una comune pompa ad immersione (per l'esattezza una di quelle da Presepe, non molto utilizzata in questi giorni) che facesse circolare l'acqua all'interno di un tubo forato.

Come al solito, il cuore del sistema realizzato è costituito da una scheda a microcontrollore, il PIC32 di Microchip già utilizzato nel progetto del mese scorso. Gli ingressi dei sensori vengono acquisiti tramite il convertitore analogico/digitale del microcontrollore, che traduce in numeri manipolabili dal software le grandezze elettriche analogiche provenienti dai trasduttori. L'attivazione delle lampade e della pompa avviene invece tramite l'accensione di tre distinti relé in grado di pilotare carichi alimentati a 220V. La scheda così assemblata, una volta programmato opportunamente il microcontrollore, era già in grado di controllare in maniera autonoma la serra, mantenendo i livelli di temperatura, illuminazione ed umidità del terreno entro intervalli prestabiliti, ma non era ovviamente controllabile da PC, né tanto meno via Internet.

Il passo successivo è stato quindi quello di implementare nel firmware del microcontrollore il supporto alla comunicazione USB. Senza scendere troppo nei particolari (peraltro approfonditi nel video del DVD), abbiamo utilizzato una API presente nel sistema operativo Windows (da XP Service Pack 2 in poi) denominata WinUSB, (di cui esiste anche una versione open source, denominata LibUSB, per sistemi operativi differenti) che consente di utilizzare un driver standard del sistema operativo, sollevando chi sviluppa il software di interfacciamento dalla responsabilità della scrittura di un apposito device driver , pratica sconsigliata a chiunque non voglia perdere tre anni della propria vita per farlo.

Foto per articolo

Dal lato del PC, abbiamo quindi sviluppato una piccola libreria "wrapper" di WinUSB per .NET 4, sfruttata a sua volta da un componente software che implementa il protocollo custom che abbiamo definito per le comunicazioni tra PC e scheda. I servizi così realizzati sono stati poi utilizzati da un'applicazione .NET desktop/WPF che permette di controllare attraverso il PC i sensori e gli attuatori della serra.

Il passo ancora successivo è stato quello di sviluppare un Webservice, realizzato con tecnologia WCF (Windows Communication Foundation, presente all'interno del Framework .NET), in grado di esporre lo stato della serra e di ricevere i comandi di attuazione via HTTP da parte di un client remoto. Come client abbiamo realizzato un'applicazione Silverlight che, oltre a permettere molto facilmente la fruizione dello stream video proveniente dalla serra (tramite una webcam e Microsoft Expression Encoder), consente con relativa semplicità di implementare una comunicazione bidirezionale full-duplex con il server che espone il webservice. In questo modo, ogni variazione dello stato rilevata dalla scheda viene immediatamente inviata dal servizio WCF al client Silverlight, senza che questo debba fare un "polling" esplicito e frequente, ottenendo così un sistema estremamente reattivo, in cui l'utente viene notificato della variazione di una grandezza fisica di un ambiente potenzialmente collocato a migliaia di chilometri di distanza in meno di un decimo di secondo! Cosa non faremmo per le nostre amate piante…

MicroGardenerClient


Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5