AO automazioneoggi appunti appunti Windows CE ha ancora molto da dire A dieci anni dal lancio sul mercato, la piattaforma per soluzioni di automazione industriale risponde alle esigenze dell’industria moderna MARCO SERGIO a nascita di Windows CE risale all’ormai della casa di Redmond, Windows CE vanta una serie di lontano 1996, anno in cui il nuovo sistema caratteristiche che lo rendono ideale per l’impiego in setoperativo venne creato con l’obiettivo di tori specifici. In particolare, questo sistema operativo è fornire una piattaforma leggera, modulare, basato su un’architettura a strati, di concezione modulare. stabile, real-time e a basso costo per solu- Questa caratteristica si traduce, immediatamente, nella zioni di automazione industriale e per l’impiego in possibilità di semplificare in modo radicale la capacità di ambienti esistenti come auto, mucomunicazione tra i singoli eleletti, dispositivi embedded. Grazie menti di cui è composto. Una proa un sistema operativo a 32 b, speprietà completata dalla possibilità cificatamente indirizzato alle apdi rimuovere o aggiungere moduli plicazioni embedded, Windows che lo costituiscono, in funzione CE ha da allora trovato posto, della necessità e dell’applicazione soprattutto nel mercato statunitenche si desidera realizzare. se, in una vasta gamma di oggetti consumer: dalle console per viGrandi capacità, deogiochi ai telefoni ‘intelligenti’, poche risorse dagli handheld ai set-top box teleProprio queste caratteristiche renvisivi. Malgrado questa capacità, il dono Windows CE particolarmenrisultato commerciale è stato da te adatto ai dispositivi palmari, sia sempre inferiore alle aspettative al per utilizzo ludico sia per impiepunto che a tre anni dal lancio, si ghi professionali. Queste soluziostimava fossero stati venduti circa ni, a differenza dei PC o dei note778 mila dispositivi CE. Un numebook, dispongono, infatti, di poro ben lontano rispetto alle cento tenzialità necessariamente limitamilioni di copie fatte registrare da Windows CE viene utilizzato in una te, sia per quanto riguarda la mesistemi operativi come Windows vasta gamma di oggetti consumer: moria a bordo, sia per l’autonomia NT e 95/98. Anche se i numeri dalle console per videogiochi ai telefoni delle batterie. La disponibilità di ‘intelligenti’, dagli handheld ai set-top appaiono meno entusiasmanti, ri- box televisivi un’architettura realmente modulare, con la possibilità di istallare spetto ad altre fortunate proposte L 166 FEBBRAIO 2006 • AUTOMAZIONE OGGI 288 AO automazioneoggi appunti Windows CE è particolarmente adatto ai dispositivi palmari, sia per utilizzo ludico sia per impieghi professionali solo le componenti effettivamente necessarie, consente di ottimizzare le risorse e, quindi, di evitare qualsiasi ‘spreco’ che potrebbe rivelarsi limitativo per un apparecchio portatile. La capacità di ottimizzare lo sfruttamento delle caratteristiche hardware del sistema su cui è stato installato non deve, però, indurre nell’errore di ritenere che questo sia un sistema operativo di ‘basso profilo’ o che non garantisca la capacità di supportare adeguatamente i processi industriali o produttivi per i quali viene impiegato. Basta infatti scorrere le API per scoprire che si tratta di un subset di WIN 32, arricchito con altri subset come Visual Basic, Java e ActiveX. Nella sua evoluzione Windows CE.NET 5.0, definito dalla stessa Microsoft ‘un sistema operativo in tempo reale’, è inoltre in grado di supportare oltre 1400 API WIN 32 consentendo così agli sviluppatori di sfruttare una vasta gamma di risorse di programmazione, tool e documentazione già disponibili e facilmente impiegabili. Del resto non possiamo dimenticare che Windows CE è stato espressamente concepito per supportare i microprocessori a 32 b delle più recenti generazioni: Mips, PowerPC, SH-3, SH-4, ARM (compreso StrongARM) e Pentium. potenti, possiede, infatti, le caratteristiche necessarie ai programmatori per sviluppare, mettere a punto e debuggare in modo rapido e veloce le proprie soluzioni. Questa possibilità risulta ulteriormente valorizzata dalla capacità, offerta da Windows CE.NET, di supportare l’ambiente visuale gratuito embedded Visual C++ e Microsoft Visual Studio .NET. In questo modo è possibile fornire un ambiente completo di programmazione che permette di sviluppare servizi web e applicazioni per Microsoft .NET Compact Framework. Inoltre, proprio grazie a questi tool, gli sviluppatori sono in grado di creare rapidamente una serie di smart design che fanno funzionare le applicazioni richieste dai più moderni device proposti sul mercato. Nel tempo gli sviluppatori hanno, quindi, mostrato un crescente apprezzamento per le qualità che caratterizzano Windows CE. Così, partendo da un sistema operativo destinato quasi esclusivamente al settore degli handheld PC, Microsoft Windows CE si è progressivamente affermato anche come piattaforma ideale per creare una serie di dispositivi embedded definiti di tipo ‘non PC’. Quando si dice real-time Quello che vogliono... gli sviluppatori L’insieme di queste capacità mette a disposizione degli sviluppatori tutte le caratteristiche del sistema operativo e dei tool di sviluppo. CE.NET, il successore di CE 3.0 che combina un sistema operativo in tempo reale con tool La fortuna di Windows CE, in ambito industriale, è legata anche alla sua capacità di coniugare un’interfaccia semplificata con prestazioni integrate real-time. Il sistema operativo, infatti, è multithread e dotato di capacità di multitasking di tipo preempitivo, in grado di gestire le priorità. Inoltre il codice, interamente a 32 b, realizzato a FEBBRAIO 2006 • AUTOMAZIONE OGGI 288 167 AO appunti automazioneoggi appunti partire da un subset delle API WIN 32, risulta effettivamente ROMable. Tale codice è quindi in grado di girare direttamente dalla ROM, evitando, così, di dover eseguire il bootstrap da disco e, di conseguenza, di ricorrere a un sistema basato su un disco fisso. Il vantaggio immediato di una simile caratteristica si traduce, come è facilmente intuibile, nella possibilità di realizzare apparecchi sempre più piccoli e più robusti, in quanto il disco fisso è uno dei componenti più difficili da proteggere, soprattutto quando il sistema deve operare in ambienti ostili come quelli che contraddistinguono il mondo industriale. Inoltre, la com- includere nel proprio device. In particolare, per gli apparecchi dotati di schermo e dispositivi di input (come i Pocket PC e gli SmartPhone), è prevista una serie di servizi sfruttabili dal codice delle applicazioni. Fra questi vale la pena di ricordare Active Template Library, una libreria C++ disegnata per creare ActiveX sotto forma di EXE o DLL contenenti componenti COM. A questi si aggiungono tre livelli di supporto alle applicazioni basate su COM. Il primo, denominato semplicemente COM, supporta esclusivamente oggetti free-threaded in-process e richiede da 100 a 200 KB di memoria. Full COM, di contro, può essere paragonato a quanto troviamo in NT 4.0 SP5: richiede 700 KB di memoria ed è in grado di supportare tutti i modelli di threading, oltre a garantire Automation e chiamate in-process e out-of-process. Infine, il livello Dcom Remote Access offre le medesime caratteristiche di Full COM, alle quali aggiunge il supporto Remote COM e Automation. Le novità più interessanti dell’ultima versione di Windows CE sono, infine, completate da Message Queuing che supporta, oltre ai protocolli basati su TCP, il trasporto dei messaggi attraverso Http e fornisce un’estensione Soap per definire un protocollo reliable end-to-end. CE.NET, il successore di CE 3.0, combina un sistema operativo in tempo reale con tool potenti pleta scalabilità del sistema lo rende adatto alle applicazioni embedded, soprattutto quando devono confrontarsi con i limiti fissati dalla disponibilità di risorse. Proprio i sistemi embedded necessitano, tipicamente, di una serie di dispositivi di comunicazione. Un’esigenza che Windows CE soddisfa in modo efficace, anche perché si tratta di un sistema operativo multitasking con scheduling di tipo preempitivo, in grado di rispondere efficacemente anche alle chiamate di I/O. L’ultima evoluzione A dieci anni dalla sua ideazione, Windows CE appare ancora capace di evolversi per rispondere alle moderne esigenze del settore. La novità più recente è rappresentata da Windows CE 5.0. Come le versioni precedenti, anche questa è destinata all’automazione industriale e costituirà la base su cui realizzare i nuovi Pocket PC e SmartPhone. Gli sviluppatori possono infatti contare su una serie di opzioni che semplificano la scrittura delle applicazioni. L’ormai scontata modularità del sistema operativo permette, ad ogni produttore, di scegliere in assoluta libertà i componenti del sistema operativo da 168 FEBBRAIO 2006 • AUTOMAZIONE OGGI 288 E l’affidabilità? Per chi è abituato a utilizzare gli applicativi Office firmati da Microsoft e, purtroppo, conosce bene la sequenza di tasti alt + ctrl + canc, parlare di Windows induce a pensare a un sistema tipicamente instabile e poco affidabile. In realtà, l’affidabilità della piattaforma realizzata da Microsoft per il settore industriale risulta notevolmente elevata. Anche perché, spesso, i problemi di instabilità del sistema sono causati dalla presenza, su medesimo computer, di un numero crescente di programmi che possono entrare in conflitto fra loro provocando un progressivo decadimento delle prestazioni. Questi problemi, invece, non si riscontrano in ambito industriale e, in particolare, sulle macchine dedicate che, come indica il nome, vengono impiegate solo per un determinato scopo e non patiscono i problemi indotti dall’introduzione di altri applicativi. Tutto questo, ovviamente, non esclude la possibilità che i bachi possano mettere in crisi la stabilità del sistema. Tuttavia, grazie alla diffusione di Windows CE, impiegato nei settori più disparati, le problematiche vengono conosciute e risolte tempestivamente da Microsoft che mette a disposizione le patch necessarie per far fronte a eventuali problemi. ■