Documentos de Académico
Documentos de Profesional
Documentos de Cultura
06
E 5,00 L A P R I M A R I V I S TA I TA L I A N A P E R L A CO M U N I T L A B V I E W
MAGGIO
2008
In caso di mancata consegna restituire alleditore che si impegna a pagare la relativa tassa presso il CMP di Roserio - Milano
SCENARIO
06
UN GIORNO A NIDAYS 08
oma, 27 Febbraio 2008. Presso lErgife Hotel si svolta la 15a edizione di NIDays, il Forum Tecnologico sulla Strumentazione Virtuale organizzato da National Instruments. I numeri di questanno (riassunti da Augusto Mandelli, Area Sales Manager di NI Italy in fase di apertura dei lavori) danno unidea delle dimensioni raggiunte dallevento: 1000 m2 di area espositiva, 31 espositori, 16 sessioni tecniche e 110 Customer Solution. Partner dellevento, Fiera Milano Editore. Tra le novit di questanno, oltre alle sessioni tecniche, due nuove aree pratiche: la LabVIEW Zone, che ha consentito di utilizzare direttamente LabVIEW 8.5 e tutte le novit della nuova release in abbinamento al sistema di acquisizione dati USB CompactDAQ, e larea Prove Pratiche di Automazione, dove stato possibile toccare con mano le potenzialit del Programmable Automation Controller (PAC) CompactRIO. Nel corso dellevento sono stati presentati anche alcuni nuovi prodotti di National Instruments, come la nuova Power SMU (Source Measure Unit) PXI-4130 ed un Industrial Controller per applicazioni rugged. La sessione plenaria stata aperta dalla keynote di Tim Dehne, Senior Vice President R&D presso National Instruments, che ha parlato di Migrazione parallela: alla scoperta delle potenzialit delle tecnologie multicore e concorrenti con interventi di Matteo Bambini, Marketing Manager NI Italy and Spain e di vari specialisti di prodotto della filiale italiana. Dopo avere fornito una panoramica sullo stato dellarte e sulle pi recenti evoluzioni del Graphical System Design, Dehne ha offerto unampia visione delle tecnologie concorrenti, partendo dal superamento della legge di Moore, attraverso i processori multicore fino ad arrivare alle piattaforme risultanti dallintegrazione di queste tecnologie. Messaggio chiave del suo intervento: la combinazione delle nuove tecnologie concorrenti e la progettazione grafica di sistemi consente di realizzare sistemi di test ad elevate prestazioni in grado di soddisfare le crescenti richieste di prodotti di alta qualit. Il futuro dipende dalla possibilit di trarre vantaggio dai benefici del parallelismo, ha sottolineato Dehne. Un tema chiave dellintervento di Dehne stato quello del risparmio energetico. Il mondo sempre pi sensibile alla questione energetica e i nuovi progetti, in ogni campo, vedono nel risparmio energetico un priorit fondamentale, ha affermato Dehne. National Instruments offre ai progettisti gli strumenti per realizzare prodotti pi efficienti dal punto di vista energetico, applicando i criteri di quella che abbiamo definito green engineering. Di questo argomento parliamo diffusamente nella sezione A tu per tu. seguita linteressante presentazione di Alessandro Masi del Cern di Ginevra, che ha illustrato il sistema di controllo in tempo reale deL collimatore Large Hadron Collider (LHC), il nuovo acceleratore di particelle gestito mediante la strumentazione modulare PXI di National Instruments. La mattinata si conclusa con la tradizionale assegnazione del Premio Nicola Chiari per la Migliore Applicazione di Misura e Automazione 2008, consegnato da Nadia Albarello, Marketing Communications Manager di NI Italy e rispettivamente da Eric Starkloff, Francis Griffiths e Tim Dehne per NI Corporation. Primo classificato Roberto Fedrizzi del Dipartimento di Ingegneria dellUniversit di Trento, con larticolo Il campo eolico sperimentale di Trento - Sistema di acquisizione dati da sensori distribuiti su turbine eoliche. Al secondo posto A. Damiani di Bimal Automazioni con Sviluppo di un sistema di test per le pompe motorizzate ed i serbatoi dellAirbus A380 Ebh. Il terzo premio andato ad A. Lugli di Sitem e P. Bruzzone, G. Cresta, M. Manarini, A. Oldrati e M. Valgimigli di Ansaldo Energia con Diagen, sistema di diagnostica remota per generatori elettrici di grande potenza. Il pomeriggio stato dedicato a numerose sessioni tecniche di approfondimento sui prodotti hardware e software di National Instruments, nelle quali i partecipanti hanno potuto condividere esperienze e confrontarsi su problematiche comuni sulla base delle proprie esigenze di aggiornamento e formazione. Le sessioni tecniche si sono articolate in quattro macro aree dinteresse: Tecnologie software; Progettazione, prototipazione e controllo; Collaudo e acquisizione dati; Soluzioni e applicazioni. Risultato: oltre 450 partecipanti visibilmente soddisfatti.
SOMMARIO
06
01 UN GIORNO A NIDAYS 08
40 NYDAYS SI FA IN QUATTRO!
Saranno toccate le citt di Catania, Bologna, Ancona e Padova
42 MC4 FA POKER
43 APPUNTAMENTI 44 INTERVISTA
20
23 IL PROGETTO DARWIN
46 LABVIEW E LAVORO
AAA
A TU PER TU
06
Tim Dehne Senior Vice President R&D presso National Instruments. Lo abbiamo inter vistato sul tema del Green Engineering, o Ingegneria Verde, al quale NI sta dedicando una crescente attenzione
R:
Come era gi successo alla fine degli anni 80, negli ultimi tempi i media hanno dato il massimo risalto a tutto ci che verde. I cambiamenti climatici globali, i crescenti prezzi dellenergia e le nuove normative nazionali e internazionali (come quelle legate al Protocollo di Kyoto, ad esempio) stanno infatti facendo emergere nuove priorit ed aspettative nei confronti del mondo industriale. E i programmi di crescita sostenibile sono solo un esempio di questa nuova sensibilit. Per rispondere alle nuove esigenze, le aziende di tutto il mondo stanno quindi cercando di cambiare i processi produttivi e i prodotti, rendendoli pi verdi. Nella visione National Instruments, il Green Engineering deve offrire i tool, le tecniche e la tecnologia che sono necessari per rendere possibile questa evoluzione. Pi in particolare, quindi, lIngegneria Verde consiste nellapplicazione di tecniche di misura e controllo per progettare, sviluppare e migliorare prodotti, tecnologie e processi al fine di ottenere benefici ambientali ed economici.
Perch National Instruments ha deciso di D : attribuire unimportanza cos elevata allIngegneria Verde?
R:
Oggi siamo tutti pi attenti allimpatto ambientale delle centrali di produzione, degli impianti industriali, dei mezzi di trasporto e, in generale, dei prodotti che utilizziamo tutti i giorni. Come si pu affrontare il problema? Chi lo risolver? Io credo che la risposta possa essere fornita solo da tecnici e ingegneri, non da politici o avvocati, e nemmeno dai medici. Una soluzione pu venire solo da una buona ricerca di base e dalla sua trasformazione in una nuova generazione di prodotti ecosensibili. E National Instruments offre i tool di misura, automazione e progettazione necessari per abilitare questo nuovo approccio. evidente che quantificare e capire aspetti del mondo reale, come i consumi energetici e le emissioni inquinanti, il primo passo per potere affrontare e risolvere i relativi problemi. Il secondo passo consiste nel progettare e sviluppa-
re una nuova generazione di prodotti e tecnologie pi efficienti, con un minore impatto ambientale. Anche in questo caso, National Instruments mette a disposizione gli strumenti hardware e software indispensabili. Riassumendo, il nostro messaggio Measure it and fix it, per sottolineare proprio il fatto che per risolvere un problema necessario innanzitutto conoscerlo o, da un punto di vista ingegneristico, misurarlo. Si potranno quindi progettare, prototipare e rilasciare (nel caso del software) o produrre in serie (nel caso dellhardware) le nuove soluzioni verdi.
Quali sono i principali settori nei quali si D : stanno sviluppando con maggiore evidenza nuove soluzioni improntate all'Ingegneria Verde?
3
A TU PER TU
06
R:
Le applicazioni dellIngegneria Verde abbracciano quasi tutti i settori, perch qualsiasi prodotto o processo produttivo ha un impatto sullambiente. Esse spaziano quindi dal monitoraggio ambientale di foreste pluviali, al retrofit di impianti e macchine di produzione di vecchia generazione con sistemi di misura e controllo pi efficienti, a elettrodomestici pi efficienti da un punto di vista energetico, ecc. Bench vi siano molti modi per raggruppare una gamma cos ampia di applicazioni, la maggior parte di esse ricade nelle cinque categorie seguenti: generazione di energia rinnovabile, qualit dellenergia, monitoraggio ambientale, ottimizzazione di macchine e sistemi di automazione esistenti e sviluppo e verifica di prodotti e tecnologie amici dellambiente. Proprio nel campo delle centrali di generazione dellenergia, stiamo assistendo a nuove applicazioni dellIngegneria Verde con una particolare attenzione alle fonti rinnovabili o alternative: energia eolica, maree, ecc. Nel campo dello sfruttamento delle maree e delle onde marine, per esempio, sono state condotte delle ricerche su un nuovo sistema basato sul movimento di un nucleo, che viene sollevato e abbassato allinterno di un campo magnetico, un po come avviene nei motori elettrici. evidente che, per potere realizzare progetti cos innovativi, sono necessari una nuova mentalit tecnica e gli strumenti adeguati per la loro implementazione.
massiva nellelettronica consumer. Altre tecnologie erano gi disponibili da qualche tempo, ma i nuovi progressi nei tool di progettazione ed ingegnerizzazione le hanno rese pi accessibili agli esperti dei singoli domini e non solo agli esperti di tecnologia. Questa evoluzione mette la tecnologia necessaria per lIngegneria Verde direttamente nelle mani di coloro che sono pi vicini ai problemi, permettendo loro di sviluppare soluzioni pi efficaci che in passato.
R:
R:
No, perch questo sarebbe un ostacolo alla diffusione dellIngegneria Verde su larga scala. Al contrario, i componenti tecnologici richiesti per le applicazioni di Ingegneria Verde devono essere non solo facilmente accessibili, ma anche disponibili ad un prezzo inferiore rispetto al passato. Alcune delle tecnologie chiave individuate da National Instruments sono le misure ad alta velocit ed alta risoluzione, lanalisi ed elaborazione avanzate dei segnali, i sistemi di controllo ad alta velocit e avanzati e le tecnologie dei sistemi embedded. In ogni caso, lapproccio di National Instruments allIngegneria Verde quello di enabling company, ossia di unazienda che lascia liberi i clienti nello sviluppo delle loro soluzioni, mettendo tuttavia a disposizione quelle tecnologie hardware e software (il sistema di progettazione grafica LabVIEW, in primis) che renderanno possibile limplementazione dei nuovi progetti, dopo il loro sviluppo ed il loro test approfondito. In questo ambito rientrano, ad esempio, le nuove piattaforme compactRIO cRIO-9072 e cRIO-9074 e le nuove Smart Camera. Alcune di queste nuove tecnologie nascono dallo sviluppo dellindustria dei semiconduttori, che ad esempio ha permesso importanti progressi nelle capacit degli ADC, diminuendone simultaneamente il costo grazie alladozione
ERRATA CORRIGE
Per uno spiacevole disguido, nel numero 5 di LabVIEW World sono state omesse le conclusioni di due articoli. In particolare, il capoverso finale dellarticolo Il futuro di LabVIEW, a pagina 4 deve intendersi sostituito da: Finch i nostri tecnici rimarranno entusiasti della tecnologia e cercheranno di migliorare la nostra vita quotidiana, le possibilit per LabVIEW saranno infinite. Il capoverso finale dellarticolo Le novit del PDA Module di LabVIEW 8.5 a pagina 13 deve intendersi sostituito da: Potete ora impostare la giustificazione del testo e sottolineare il testo di pulsanti e di controlli e indicatori di tipo stringa, time stamp e numerici (fig. 9). Per un esempio si pu vedere su ni.com/italian infocode: it3nch Ci scusiamo per linconveniente
Come in tutte le cose, necessario rispondere a due quesiti fondamentali: disponibile la tecnologia necessaria per un reale impatto? Esiste una reale opportunit di business? Riteniamo che la risposta ad entrambe le domande sia affermativa. In particolare, nei prodotti verdi esiste una reale opportunit di profitto. Con il prezzo del petrolio a 120 dollari al barile, rimane forte la domanda di tecnologie e prodotti che aiutino le aziende a consumare meno petrolio nelle loro macchine e nei loro processi, pur ottenendo gli stessi risultati. Altre aziende, cercando di evitare sanzioni salate per la non aderenza alle normative ambientali, stanno acquistando tool di monitoraggio e reporting. A sostenere questo trend, un recente studio pubblicato da Pricewaterhouse Coopers ha evidenziato che gli investimenti di venture capital nelle applicazioni di tecnologia pulita, come quelle di risparmio energetico, riciclaggio, depurazione delle acque, controllo delle emissioni e delle energie rinnovabili, sono triplicati nel 2006, raggiungendo oltre 1,4 miliardi di dollari e sono cresciute quasi del 50% anche nel 2007, superando i 2 miliardi di dollari.
W H AT S N E W
06
I costrutti di programmazione come i cicli for e i cicli while permettono lesecuzione ripetitiva del codice
in dalla sua introduzione nel 1986, LabVIEW ha incorporato concetti di programmazione simili a quelli dei linguaggi basati su testo. Per esempio, i costrutti di programmazione come i cicli for e i cicli while permettono lesecuzione ripetitiva del codice. I linguaggi basati su testo offrono inoltre metodi per terminare lesecuzione dei loop al verificarsi di una condizione specificata; in LabVIEW, prima della versione 8.5, solo il ciclo while permetteva questo comportamento.
Per aggiungere un terminale condizionale a un ciclo for, cliccate con il tasto destro sul bordo del ciclo e selezionate Conditional Terminal nel menu abbreviato. Dovete quindi collegare il terminale condizionale e cablare il terminale di conteggio o autoindicizzare un array dingresso per lesecuzione del loop e del VI.
11 iterazioni, quando i = 10. int i; i = 0; for (i = 0; i < 50; i++) { if (i == 10) break; } Un programmatore LabVIEW che deve iterare su tutti gli elementi di un array
INFORMAZIONI DI BACKGROUND
I programmatori spesso devono interrompere un loop al verificarsi di una condizione specifica. I linguaggi basati su testo includono istruzioni che permettono ai i cicli for e ai cicli while di uscire quando si presenta una condizione specificata. Per esempio, nel seguente esempio in codice C, viene programmato un loop in modo che si iteri 50 volte (da 0 a 49). Tuttavia, lesecuzione del loop si interrompe usando la funzione Break dopo
W H AT S N E W
usa spesso un ciclo for, perch esso permette lautoindicizzazione dellarray. Il tipico codice LabVIEW simile a quello della figura 3. Bench questa soluzione sia funzionalmente corretta, il ciclo for visita ogni elemento dellarray, anche se la condizione duscita si verifica in una delle prime iterazioni del loop. Per una maggiore efficienza, potete invece utilizzare un ciclo while (figura 4). Questa soluzione, che pi complessa e richiede pi codice, itera sullarray fino
dinteresse, lesecuzione del loop si interrompe. Se lelemento non si trova nellarray, il risultato un loop infinito. Una soluzione migliore quella di usare un ciclo for configurato per un break. Se lelemento dinteresse non
ne con uscita condizionata, N rappresenta il numero massimo di possibili iterazioni del loop, ma non necessariamente il numero esatto di volte per le quali il loop verr eseguito. Il terminale condizionale si comporta come in un ciclo while. Potete commutare il terminale condizionale su Continue if True o collegare ad esso un cluster derrore (figura 7).
al verificarsi della condizione o quando viene raggiunta la fine dellarray. Come illustrato nella figura 1, un ciclo for configurato con una condizione di break una soluzione molto pi semplice ed elegante. Potete anche usare un ciclo while per effettuare una ricerca in un array; quando avete trovato il vostro elemento
Non potete cancellare il terminale condizionale; per rimuovere il terminale condizionale, dovete deselezionare lopzione Conditional Terminal nel menu del loop che si ottiene cliccando con il tasto destro.
Note sullautore
Laureato in ingegneria nucleare al Politecnico di Milano, Matteo Foini lavora in qualit di Technical Marketing Engineer presso National Instruments Italy
W H AT S N E W
06
SINCRONIZZARE LE CARTELLE
a cura di Matteo Foini
Un folder autopopolante sincronizzato con un folder su disco e si aggiorna, o popola, costantemente per riflettere il contenuto del folder su disco. Laggiunta di un folder autopopolante a un LabVIEW Project aggiunge effettivamente una directory su disco, insieme alle sue subdirectory. LabVIEW monitora e aggiorna costantemente il folder autopopolante in base ai cambiamenti eseguiti su disco e ai cambiamenti apportati al progetto. Unicona blu con un cilindro giallo identifica visivamente un folder autopopolante (figura 1), mentre i folder virtuali sono identificati da unicona argento.
I folder autopopolanti offrono accesso immediato a tutti i file nelle directory e riflettono allistante qualsiasi modifica eseguita su disco (come laggiunta, lo spostamento o la cancellazione di file). Tuttavia, con i folder autopopolanti, non potete applicare ai file unorganizzazione personalizzata, indipendente dalla struttura su disco. Tale organizzazione custom dei file invece possibile con i folder virtuali. Potete usare i folder autopopolanti e i folder virtuali nello stesso LabVIEW Project per ottenere la massima flessibilit.
Readerser vice.it n. 605
W H AT S N E W
06
LabVIEW 8.5 introduce VI Merge, un nuovo tool che offre la possibilit di combinare le modifiche appor tate a copie distinte di codice grafico utilizzando lanalisi e il confronto automatizzati
I Merge semplifica il ciclo di sviluppo permettendo lo sviluppo parallelo e risolvendo i conflitti creati da pi modifiche dello stesso segmento di codice. Se a una particolare sezione di codice viene applicato simultaneamente pi di un set di cambiamenti a causa del lavoro di pi sviluppatori, potete usare VI Merge per automatizzare il processo di ricombinazione.
binare i cambiamenti. Potete usare VI Merge sia in modo automatico sia in modo interattivo. La stessa funzionalit disponibile in LabVIEW viene esposta grazie a un eseguibile destinato allutilizzo in applicazioni di controllo del codice sorgente.
mente. Le due copie modificate sono chiamate Their VI e Your VI nellarea di dialogo Merge VIs. Tutte le tre copie del codice sono fornite a VI Merge, che quindi confronta ed unisce tutte le modifiche non in conflitto.
Figura 2
W H AT S N E W
06
fra loro, salvate in luoghi diversi; VI Merge lunico tool in grado di ricombinare tali modifiche. I progetti di sviluppo pi piccoli che non usano software di controllo del codice sorgente possono implementare lo sviluppo parallelo per aumentare lefficienza. Consideriamo uno scenario nel quale pi casi di una struttura case devono essere popolati con codice differente, come illustrato nella figura 3.
loro sforzi. Consideriamo la creazione di codice in parallelo da parte di sviluppatori distinti per i due casi della struttura illuFigura 5 strata nella figura 3: Basic Function Generator e Sine Waveform. Gli sviluppatori possono salvare le due copie del file originale (figura 4) in nuove posizioni distinte e, come indicato nellarea di dialogo Merge VIs, una copia diventa Your VI e laltra Their VI. Nota Poich LabVIEW non pu caricare due VI con lo stesso nome, dovete rinominare i VI che volete combinare.
cita a scegliere se la modifica che volete sia rappresentata nel VI combinato sia quella proveniente dal VI base, dal VI chiamato Your VI o dal VI Their VI. Larea di dialogo Merge vi offre la flessibilit necessaria per accettare la fusione del codice creata a partire dalle due parti, o di annullare qualsiasi modifica. Scorrendo le modifiche cliccandovi sopra, si evidenziano le modifiche stesse sul pannello frontale o sullo schema a blocchi del VI combinato.
Figura 3
CONFLITTI DI MERGE
Durante unoperazione di merge possono emergere dei conflitti se due oggetti vengono modificati in modo tale da non poter coesistere dopo la combinazione. Per esempio, se uno sviluppatore crea codice che incrementa le dimensioni di un oggetto del pannello frontale, mentre un altro sviluppatore crea codice che diminuisce le dimensioni dello stesso oggetto, quando si esegue il merge dei VI, VI Merge visualizza un conflitto irrisolto e vi invita a selezionare una delle due modifiche. In conclusione, VI Merge evita luso inefficiente delle risorse di sviluppo automatizzando un processo che pu essere altrimenti noioso e molto laborioso. Errori e conflitti che interrompono il ciclo di sviluppo parallelo del codice possono essere evitati tramite luso corretto di questo tool in combinazione con un processo definito di gestione del codice sorgente.
Nota La freccia di run (nella figura) rotta perch le uscite della struttura case non sono ancora collegate a nulla. Questo il Base VI , che verr modificato da pi sviluppatori.
Il VI base contiene la struttura vuota con tutti gli input e output appropriati collegati come richiesto. Questo VI incompleto viene quindi distribuito a pi sviluppatori per essere completato nei vari casi e poi ricombinato in modo automatico tramite luso di VI Merge. Se i permessi sono regolati in modo da consentire a pi sviluppatori di modificare simultaneamente questo file, questi possono lavorare su casi separati di questa struttura, combinando quindi i
USO DI VI MERGE
Larea di dialogo Merge VIs richiede agli utenti di specificare la posizione dei tre file. Per richiamare leseguibile dalla linea di comando, sufficiente specificare pochi parametri, inclusa la posizione delle tre copie del VI. Ogni implementazione porta allo stesso risultato, purch non esistano conflitti. Dopo avere specificato la posizione delle tre copie di codice ed avere eseguito lutility, LabVIEW visualizza una copia combinata del VI, insieme alle tre parti di codice originali ed enumera tutte le operazioni di merge eseguite. Potete esplorare questi cambiamenti e tornare alla copia base, o salvare il VI combinato. Se in conseguenza al processo di merge emergono dei conflitti, appare larea di dialogo Merge, che vi solle-
Figura 4
10
06
Vediamo come specificare il set di CPU disponibili per il bilanciamento automatico del carico di lavoro in LabVIEW Real-Time
l modulo Real-Time di LabVIEW 8.5 include le estensioni NI RT per il multiprocessing simmetrico (SMP), che potete installare per trarre vantaggio da sistemi multicore dotati fino a un massimo di 32 CPU. Linstallazione di tali estensioni aggiunge funzionalit di bilanciamento automatico del carico di lavoro, in grado di distribuire i thread delle applicazioni fra le diverse CPU. Questo articolo discute i concetti di bilanciamento automatico in LabVIEW RealTime e introduce lAPI SMP, che potete utilizzare per specificare il set di CPU disponibili e riservarne alcune per luso esclusivo da parte di specifiche Timed Structures. Consultate lhelp di LabVIEW 8.5 Real-Time Module per unintroduzione alla programmazione multi-core in LabVIEW Real-Time e ni.com/multicore per avere maggiori informazioni sui concetti relativi alle tecnologie multi-core. Utilizzate il LabVIEW Real-Time Software Wizard in Measurement & Automation Explorer per installare le estensioni NI RT per lSMP. Infine, consultate lhelp di Measurement & Automation Explorer per informazioni sulluso di Real-Time Software Wizard.
POOL DI CPU
Con le Estensioni NI RT per lSMP installate, il sistema operativo real-time (Rtos) ETS mantiene due pool di CPU disponibili per il bilanciamento automatico del carico: un pool per il sistema operativ (OS) ed un pool per le Timed Structure (TS). Le CPU nel pool TS sono disponibili per il bilanciamento automatico del carico delle Timed Structures (Timed Loops e Timed Sequences) configurate per lAssegnazione Automatica della CPU. Le CPU nel pool OS sono utilizzate per tutti gli altri processi, inclusi i task a basso livello del sistema operativo.
Tuttavia, potete utilizzare lAPI SMP introdotta in questo articolo per specificare pool OS e TS arbitrari. LabVIEW Real-Time esegue il bilanciamento automatico del carico su tutti i thread, con leccezione dei thread Timed Structure assegnati manualmente. LabVIEW mappa lesecuzione del codice da ciascuna Timed Structure al proprio thread dedicato, ma esegue il bilanciamento automatico del carico solo sui thread Timed Structure configurati per lassegnazione automatica della CPU. Potete assegnare manualmente una Timed Structure ad una particolare CPU collegando lindice della CPU allingresso Assigned CPU della Timed Structure o utilizzando la parte Processor Assignment della corrispondente finestra di dialogo Configure Timed Structure. Il valore di Assigned CPU di default, pari a 2, indica che la Timed Structure configurata per lassegnazione automatica del processore attraverso il bilanciamento automatico del carico. Generalmente, il processo di bilanciamento automatico del carico evita la necessit di commutare un dato thread fra le CPU, per minimizzare loverhead di trasferimento dati fra le CPU. Tuttavia, lo schedulatore SMP potrebbe commutare ripetutamente un thread da una CPU a unaltra se il carico dovuto ad altri thread di priorit pari o superiore eseguiti su ciascuna CPU fluttua in modo significativo. Potete utilizzare il Real-Time Execution Trace Kit per determinare se il thread di una Timed Structure si sposta da CPU a CPU. Per fare in modo che lo schedulatore SMP non assegni inaspettatamente Timed Structures ad una particolare CPU, potete rimuovere tale CPU dal pool TS usando lAPI SMP descritta sotto. Tuttavia, per fare in modo che una Timed Structure abbia laccesso esclusivo ad una CPU assegnata manualmente, dovete anche rimuovere quella CPU dal pool OS. Cos facendo, potete massimizzare le prestazioni di un Timed Loop deterministico, come descritto nel paragrafo Isolare una Timed Structure di questo articolo.
11
06
1. Al pool TS, nel qual caso lo schedulatore SMP pu utilizzare la CPU per eseguire Timed Structures configurate per lAssegnazione Automatica della CPU. 2. Al pool OS, nel qual caso lo schedulatore SMP pu utilizzare la CPU per eseguire thread che non corrispondono a Timed Structures. 3. Ad entrambi i pool, nel qual caso lo schedulatore SMP pu utilizzare la CPU in uno dei due modi precedenti. 4. A nessun pool (riservata), nel qual caso la CPU dedicata solamente allesecuzione di Timed Structures che vengano assegnate manualmente a quella CPU. Quando un target RT esegue il boot up, tutte le CPU sono piazzate in entrambi i pool per default. Tuttavia, potete utilizzare lAPI SMP per assegnare ciascuna CPU ad uno qualsiasi dei quattro stati elencati sopra. Nota: Ogni pool deve contenere almeno una CPU, anche se entrambi i pool possono condividere una singola CPU.
12
06
core al pool TS e due delle CPU, per es. le CPU 2 e 3, al pool OS. Potreste assumere che i due Timed Loops di polling saranno eseguiti sulle CPU 0 e 1 e che i Timed Loops intermittenti condivideranno il tempo di elaborazione sulle CPU 2 e 3. Tuttavia, lo schedulatore SMP potrebbe assegnare i Timed Loops di polling alle CPU 2 e 3, appesantendo gli altri thread dellOS e lasciando sottoutilizzate le CPU 0 e 1. In questo caso, la soluzione migliore sarebbe quella di isolare i Timed Loops di polling sulle due CPU ed assegnare le due CPU rimanenti ad entrambi i pool.
questo VI per definire i pool OS e TS specificando il numero di CPU che volete sia contenuto in ciascun pool. Questo VI crea i pool OS e TS come pool adiacenti di CPU contigue. Il pool OS inizia dalla CPU 0 ed il pool TS inizia dove finisce il pool OS. Per esempio, su un sistema con otto CPU, se collegate un valore 3 ai controlli OS Pool e TS Pool, questo VI assegna le CPU 0-2 al pool OS, le CPU 3-5 al pool TS e lascia le CPU 6-7 riservate per luso da parte delle Timed Structures configurate per lassegnazione manuale della CPU. Nota: Non potete utilizzare questo VI per creare pool vuoti o parzialmente sovrapposti. Questo VI restituisce un errore se specificate una dimensione 0 del pool OS o del pool TS o se i valori del pool OS e del pool TS che specificate danno una somma maggiore del numero di CPU disponibili nel sistema. Specificando un valore -1 per uno dei pool si indica che non si hanno preferenze di dimensioni per quel pool. Se si specifica un valore -1 per entrambi i pool, il VI crea la configurazione di default del pool, in cui entrambi i pool contengono ogni CPU nel sistema. Se si specifica una dimensione del pool pari a -1 per un pool, il VI assegna tutte le CPU rimanenti a quel pool. Per esempio, in un sistema a quattro CPU, se si specifica una dimensione del pool di -1 per il pool OS ed una dimensione del pool di 2 per il pool TS, il VI assegna le CPU 0 e 1 al pool OS e le CPU 2 e 3 al pool TS.
Get CPU Loads.vi Monitorizza la distribuzione del carico fra le CPU nel sistema. Per ogni CPU nel sistema, questo VI restituisce il carico totale come percentuale della capacit, nonch la percentuale della capacit totale dedicata alle routine di servizio degli interrupt (ISR), alle Timed Structures e a tutti gli altri thread. Ln-simo elemento di ciascun array corrisponde allnsima CPU nel sistema.
Set CPU Pool Sizes.vi Imposta il numero di CPU in ciascun pool. Potete utilizzare
Set CPU Pool Assignment Assegna le CPU ad uno di quattro possibili stati: solo pool OS, solo pool TS, entrambi i pool o nessun pool (riservata). Questo VI genera le maschere di bit che specificano le CPU assegnate a ciascun pool. In un sistema con n CPU, i bit della maschera di bit corrispondono alle CPU da 0 a n -1. Il bit pi a destra di ciascuna maschera di bit corrisponde alla CPU 0 ed il bit pi a sinistra corrisponde alla CPU 31 (se tale CPU esiste nel sistema). Lingresso a questo VI un array di enum. Lenum contiene i quattro possibili stati di una CPU e ciascun elemento dellarray rappresenta una CPU. Per esempio, nellipotesi di un sistema con otto CPU, larray di enum nella figura qui sotto assegna le CPU 0, 1 e 2 al pool OS, le CPU 3 e 6 al pool TS e riserva le CPU rimanenti.
13
06
almeno una CPU. Se preferite lavorare con le maschere di bit, potete utilizzare i VI di basso livello sulla sottopalette Advanced. Per esempio, la figura seguente utilizza i VI di Set OS Pool.vi Specifica il set di CPU contenute nel pool OS. Lingresso OS mask una maschera di bit nella quale il bit pi a destra corrisponde alla CPU 0 ed il bit pi a sinistra corrisponde alla CPU 31. Per assegnare un core CPU al pool OS, impostate il valore del bit corrispondente a 1. Per specificare che il pool OS non deve contenere una particolare CPU, impostate il valore del bit corrispondente a 0. Nota: Il pool OS deve contenere almeno una CPU valida.
basso livello set OS Pool.vi e Set TS Pool.vi per ottenere la stessa configurazione dei pool dellarray di enum descritto nellesempio precedente.
CONCLUSIONE
Il Modulo Real-Time di LabVIEW 8.5 utilizza il bilanciamento automatico del carico per distribuire i thread fra due pool di CPU. Le CPU nel pool OS eseguono tutti i thread ad eccezione di quelli che corrispondono a Timed Structures. Le CPU nel pool Timed Structure (TS) esegue i thread che corrispondono a Timed Structures configurate per lassegnazione automatica delle CPU. Per default, LabVIEW Real-Time assegna tutte le CPU ad entrambi i pool. Tuttavia, potete utilizzare lAPI di Pool Utilities per SMP CPU per definire i pool OS e TS in modo da rispondere le vostre specifiche esigenze applicative. Per installare lAPI, estraete il contenuto del file SMP_CPU_Utilities.zip nel folder \labview 8.5\user.lib folder sul vostro computer. Dopo lestrazione dei file nel folder user.lib folder, la prossima volta che eseguite LabVIEW appare la palette SMP CPU Utilities come sottopalette della palette User Libraries. Potete scaricare il file dellAPI descritta in questo articolo al seguente link: ni.com/italian (info code: it3nch)
Set TS Pool.vi Specifica il set di CPU contenute nel pool TS. Lingresso TS mask una maschera di bit nella quale il bit pi a destra corrisponde alla CPU 0 ed il bit pi a sinistra corrisponde alla CPU 31. Per assegnare un core CPU al pool TS, impostate il valore del bit corrispondente a 1. Per specificare che il pool TS non deve contenere una particolare CPU, impostate il valore del bit corrispondente a 0. Nota: Il pool TS deve contenere almeno una CPU valida.
Note sullautore:
Gerardo Garcia il product manager di LabVIEW Real-Time. laureato in Ingegneria Elettrica alla Texas A&M University
14
06
Lar ticolo contiene esercizi che potete utilizzare per imparare a creare ed impor tare nuovi blocchi MINDSTORMS
possibile utilizzare il LabVIEW Toolkit for LEGO MINDSTORMS NXT con LabVIEW 7.1 per creare blocchi da importare nel software LEGO MINDSTORMS NXT. I blocchi sono oggetti che utilizzerete per programmare i dispositivi NXT con il software MINDSTORMS. Nota Poich il software LEGO MINDSTORMS NXT basato sulla versione 7.1 di LabVIEW, dovere usare LabVIEW 7.1 per salvare i blocchi MINDSTORMS che create. Larticolo presuppone che abbiate LabVIEW 7.1, il LabVIEW Toolkit for LEGO MINDSTORMS NXT e che abbiate una buona familiarit con lo sviluppo di VI in LabVIEW. Specificamente, la creazione di blocchi implica i seguenti concetti LabVIEW.
IMPLEMENTATION VI
Implementation VI il file che il software MINDSTORMS compila e scarica effettivamente sullNXT. Dovete denominare il vostro Implementation VI nel modo seguente (NewBlock fa riferimento al nome che voi darete al vostro blocco).
NewBlock\NewBlock.vi
CONFIGURATION VI
Il Configuration VI quello che appare nel pannello di configurazione del software MINDSTORMS. Il Configuration VI fornisce diverse funzioni, incluso laggiornamento dei valori di default sul vostro Implementation VI e la lettura dei dati dai sensori. Dovete denominare il vostro Configuration VI nel modo seguente.
Tipi di dato: interi, booleani, stringhe, array, cluster e variant Funzioni base utilizzate con i tipi di dato precedenti Struttura case, a eventi, cicli e sequenze Variabili locali VI Server Larticolo presuppone inoltre che abbiate il software LEGO MINDSTORMS NXT e che abbiate familiarit con le basi di sviluppo per lNXT. Per importare blocchi nel software MINDSTORMS, dovete installare il Dynamic Block Update, disponibile online allindirizzo mindstorms.lego.com/support/updates. Il LabVIEW Toolkit for LEGO MINDSTORMS NXT fornisce diversi blocchi di riferimento (template) con esempi di funzionalit che potete utilizzare. Questi template sono situati nella directory LabVIEW\vi.lib\addons\NXTToolkit\Block Templates\. Per creare il vostro blocco, potete partire da un template e modificarlo in base alle vostre esigenze.
NewBlock\Config NewBlock.vi
DRAW VI
Il Draw VI aggiorna limmagine del vostro blocco sullo schema a blocchi MINDSTORMS. Dovete denominare il vostro Draw VI nel modo seguente.
NewBlock\Draw NewBlock.vi.
BLOCK ICON
La Block Icon limmagine del vostro blocco che appare nella palette e sul diagramma a blocchi. Dovete denominare la vostra Block Icon nel modo seguente.
NewBlock\NewBlock.png
NewBlock\NewBlock.txt
SENSOR FILE
Nota Il Sensor file richiesto solo se create un blocco sensore. Il contenuto del Sensor File fornisce informazioni che per-
FILE RICHIESTI
Per importare un blocco nel software MINDSTORMS dovete creare i seguenti file.
15
06
mettono ai blocchi Wait For, Loop, Switch e Calibrate di indirizzare il blocco sensore. Dovete denominare il Sensor File nel modo seguente.
Ogni file addizionale richiesto per il Context Help File, come le immagini, deve risiedere nella cartella NewBlock\Help Content\NewBlock Files\.
NewBlock\Sensor.ini
FULL HELP
Il Full Help File un file HTML nel quale potete includere informazioni dettagliate sul vostro blocco. Se premete F1 mentre passate il mouse sopra il vostro blocco, MINDSTORMS carica il Full Help File in un web browser esterno. Dovete denominare il vostro Full Help File nel modo seguente.
FILE OPZIONALI
I seguenti file non sono richiesti per importare con successo un blocco nel software MINDSTORMS. Tuttavia, potete includerli per fornire maggiore funzionalit al vostro blocco.
VERSION FILE
Il Version File contiene la stringa con la versione del vostro blocco, permettendo agli utenti di sapere quale versione del blocco hanno. Dovete denominare il Version File nel modo seguente.
NewBlock\Version.txt
DRAGGED ICON
La Dragged Icon limmagine che appare quando si trascina il proprio blocco dalla palette allo schema a blocchi. Dovete denominare la vostra Dragged Icon nel modo seguente.
NewBlock\NewBlock Dragged.png
DRAWERS FILE
Il Drawers File descrive lordine nel quale MINDSTORMS visualizza i controlli dal vostro Implementation VI nel data hub che si estende sotto il blocco nel workspace. Dovete denominare il vostro Drawers File nel modo seguente.
NewBlock\Drawers.dat
DRAWER IMAGES
La cartella Drawer Images contiene tutte le immagini addizionali richieste per il vostro blocco. I file Drawer Images devono avere estensione .png e devono risiedere nella seguente cartella.
NewBlock\Drawer Images\
NewBlock\Help Content\Block_NewBlock.htm
16
MODIFICARE LIMPLEMENTATION VI
Cambiate lImplementation VI in modo che punti ad un sensore di illuminazione. 1. Aprite NewBlock.vi in LabVIEW. 2. Sullo schema a blocchi, cliccate due volte per aprire il Simple Sensor Sub VI. 3. Modificate il Simple Sensor Sub VI per puntare ad un sensore di illuminazione ed includere un controllo che commuti quando il sensore di illuminazione genera luce. a. Create un controllo Booleano ed etichettatelo Generate Light. b. Mettete una funzione Select sullo schema a blocchi. c. Create una copia del controllo Sensor Type, che attualmente impostato su LIGHT_INACTIVE. Impostate il nuovo controllo Sensor Type su LIGHT_ACTIVE. Collegate il controllo Sensor Type LIGHT_ACTIVE allingresso True della funzione Select ed il controllo Sensor Type LIGHT_INACTIVE allingresso False della funzione Select. d. Aggiungete ed eliminate fili come necessario. Quando finirete questo passo, lo schema a blocchi dovrebbe essere simile a quello della fig. 1.
Figura 1
e. Sul pannello frontale, aggiungete il controllo Generate Light al pannello dei connettori. f. Salvate e chiudete il Simple Sensor Sub VI e tornate allImplementation VI. 4. Create un controllo Booleano, etichettatelo Generate Light e collegatelo allingresso Generate Light del Simple Sensor Sub VI. 5. Sul pannello frontale, aggiungete il controllo Generate Light al pannello dei connettori. I controlli e gli indicatori nel pannello dei connettori dellImplementation VI diventano i drawer nel data hub del vostro blocco in MINDSTORMS. Nota Il software MINDSTORMS supporta solo i tipi di dato numerico, Booleano e stringa per i drawer. Per importare con successo un blocco in MINDSTORMS, includete nel pannello dei connettori del vostro Implementation VI solo controlli e indicatori dei tipi di dato supportati. 6. Salvate e chiudete lImplementation VI.
MODIFICARE IL CONFIGURATION VI
Cambiate il Configuration VI in modo che interagisca con il controllo Generate Light sullImplementation VI. 1. Aprite il Configuration VI.
2. Cambiate il testo in alto a sinistra sul pannello frontale da Template Sensor Block a NewBlock. 3. Aggiungete sul pannello frontale un controllo Booleano che permetta allutente di configurare il sensore di illuminazione per generare luce. a. Dalla palette All Controls, selezionate NXTToolkit per aprire la palette NXTToolkit. b. Selezionate NXTToolkitNXT ControlsConfig DecorationsOne Row Background e mettete un One Row Background sul pannello frontale sotto lo One Row Background etichettato Port. c. Selezionate NXTToolkitNXT ControlsNXT Checkbox e mettete una spunta dentro One Row Background Generate Light. d. Ridenominate la casella di spunta da NXT Checkbox a Generate Light. e. Su tutte le etichette dello schema a blocchi, disabilitate Size to Text. f. Accertatevi che tutti gli oggetti dellinterfaccia utente siano situati nellangolo in alto a sinistra del pannello frontale. Quando avrete terminato questo passo, il pannello frontale dovrebbe avere un Figura 2 aspetto simile a quello della figura 2. Nota Quando importate il vostro blocco, nel software MINDSTORMS appaiono solo gli oggetti nellangolo in alto a sinistra del pannello frontale. 4. Modificate il Configuration VI per leggere il valore Generate Light dallImplementation VI e popolare il pannello di configurazione con i valori corretti quando il vostro blocco viene selezionato nel software MINDSTORMS. a. Aprite il Configuration VI. b. Sullo schema a blocchi, trovate la struttura Sequence Get Default Values from Block. Rimuovete i fili che collegano i due Invoke Node. Ridimensionate la struttura e spostate ancora pi a sinistra lInvoke Node per lasciare spazio a funzioni addizionali. c. Disponete un nuovo Invoke Node fra il Property Node e lInvoke Node esistente. Collegate luscita VI Ref del Property Node allingresso reference del nuovo Invoke Node. Sul nuovo Invoke Node selezionate il metodo Get Control Value [Variant]. d. Create una nuova costante stringa con il valore Generate Light e collegatela allingresso Control Name del nuovo Invoke Node. e. Disponete una nuova funzione Variant to Data nella struttura Sequence Get Default Values from Block e collegate una costante True allingresso type. f. Create una nuova variabile locale per il controllo Generate Light che avete aggiunto al pannello frontale. g. Collegate luscita dati della funzione Variant to Data alla variabile Generate Light. h. Quando avrete finito questo passo, la struttura Sequence Get Default Values from Block dovrebbe avere un aspet-
17
06
Figura 3
Figura 4
to simile a quella della figura 3. 5. Modificate il Configuration VI in modo da aggiornare il controllo Generate Light sul vostro Implementation VI quando un utente aggiorna la casella di spunta Generate Light. a. Trovate la struttura a eventi a destra della struttura Sequence Get Default Values from Block e selezionate il caso Plug Selector. Cliccate con il tasto destro sulla struttura e selezionate Duplicate Event Case dal menu abbreviato. Selezionate Generate Light nella listbox Event Source. Quindi, selezionate Value Change nella listbox Events. Cliccate OK per salvare le vostre modifiche ed uscite dallarea di dialogo. b. Nel frame del nuovo caso Generate Light, cambiate il valore della costante stringa da Connection a Generate Light. b. Quando avrete terminato questo passo, la struttura a eventi dovrebbe avere un aspetto simile a quello della figura 4. 6. Salvate e chiudete il Configuration VI.
NXT_ImageDataCache.vi registra le immagini in memoria, quindi sufficiente leggerle una sola volta dal file. d. Disponete NXT_BlockParamOffset.vi come subVI nella struttura sequence. Create una costante per lingresso Pad Selector e selezionate BottomRight. Lingresso Pad Selector determina loffset per tracciare limmagine nellangolo in basso a destra. e. Disponete OffsetImageCluster.vi e Draw Flattened Blended Pixmap.vi come subVI nella struttura sequence. OffsetImageCluster.vi sposta limmagine nella posizione corretta e Draw Flattened Blended Pixmap.vi la aggiunge alla Block Icon. f. Quando avrete terminato questo passo, la struttura sequen-
Figura 5
ce dovrebbe avere un aspetto simile a quello della figura 5. 3. Salvate e chiudete il Draw VI
18
essi quando un utente dispone il blocco. Per specificare una funzionalit che differisce da questo stato di default, dovete includere un Drawers File nella cartella del vostro blocco. Quando utilizzate il New NXT Block Wizard per creare il vostro blocco, il wizard mette un template del Drawers File nella cartella del vostro blocco. Potete modificare il Drawers File in un editor di testi per specificare le vostre funzionalit. Sotto [Drawers] nel Drawers File, elencate i controlli e gli indicatori sul pannello dei connettori del vostro Implementation VI nellordine con il quale desiderate che appaiano nel software MINDSTORMS. Sotto [OpenOnDrop], elencate le etichette dei controlli e degli indicatori che desiderate vengano aperti automaticamente da MINDSTORMS quando un utente dispone il vostro blocco sullo schema, nellordine con il quale volete che appaiano. Se volete creare immagini custom dei vostri plug, dovete includerle nella directory NewBlock\Drawer Images\. Dovete inoltre denominarle esattamente come letichetta del controllo o dellindicatore corrispondente, con estensione .png. Per esempio, se avete un controllo etichettato MyControl, dovete denominare limmagine corrispondente nel modo seguente: NewBlock\Drawer Images\MyControl.png Se non includete i vostri file di immagini, MINDSTORMS visualizza limmagine di default per il tipo di dato del controllo.
SENSOR FILE
Se create un blocco sensore e volete che si interfacci con lanello Loop/Wait for/Switch, dovete includere un Sensor File nella directory del vostro blocco. Il Sensor File deve contenere almeno le linee seguenti:
[Sensor] Group=Custom
MINDSTORMS usa le linee precedenti per popolare i controlli ad anello sui blocchi Wait For, Switch e Loop. Se il vostro sensore un sensore analogico e volete che sia elencato nel blocco Calibrate e nel tool Calibrate Sensors, dovete includere le seguenti linee addizionali nel Sensor File:
DRAWER
I Drawer nel software MINDSTORMS sono i connettori di un blocco, chiamati plug, e sono contenuti nel data hub che si estende sotto un blocco nello spazio di lavoro. Quando create un blocco MINDSTORMS, potete usare il Drawers File per specificare la funzionalit dei suoi dati. Se non includete un Drawers File nella cartella del vostro blocco, il software MINDSTORMS ordina automaticamente i controlli e gli indicatori sul pannello dei connettori del vostro Implementation VI nel data hub del blocco, ma non apre nessuno di
Note sullautore:
Laureato in ingegneria nucleare al Politecnico di Milano, Matteo Foini lavora in qualit di Technical Marketing Engineer presso National Instruments Italy
19
D A L L A T E O R I A A L L A P R AT I C A
06
La sfida era quella di offrire un sistema completamente elettronico per lassistenza al pilota nella condotta di velivoli leggeri
igySky ha realizzato un nuovo sistema Efis (Electronic Flight Information System) per controllare continuativamente ed automaticamente le condizioni di volo e le eventuali anomalie relative ai sistemi avionici utilizzando unarchitettura a basso costo. La soluzione realizzata da DigiSky, denominata SkyEfis, si basa su un PC industriale con sistema operativo Windows dotato di un display LCD ad altissima luminosit. In questo modo stato ottenuto un glass cockpit a basso costo sul quale eseguire unapplicazione sinottica (NI LabWindows/CVI) dedicata alle funzioni di condotta del velivolo.
LAPPLICAZIONE SKYEFIS
Lapplicazione SkyEfis nasce per soddisfare lesigenza del pilota di velivoli leggeri (categoria di aeroplani ed elicotteri prevalentemente monorotori con peso al decollo dellordine dei cinque quintali) di avere il completo controllo dei parametri di volo, del propulsore e degli impianti, senza compromettere il piacere di un volo condotto in libert e nella massima sicurezza. La filosofia adottata quella di trasferi-
INTRODUZIONE
Il settore dellaviazione leggera si significativamente sviluppato con lintroduzione sul mercato di velivoli tecnologicamente sofisticati capaci di performance paragonabili a quelli dellaviazione civile. Questo segmento richiede ladozione di sistemi avionici che, pur non assoggettati ai vincoli di certificazione aeronautica, devono rispondere alle esigenze di massima immediatezza e sicurezza di utilizzo. Lutilizzo di un sistema elettronico per lacquisizione di tutti i parametri utili alla condotta del velivolo ed al controllo degli apparati rappresenta un importante ausilio al pilota per dedicare la maggiore attenzione al pilotaggio.
Figura 1
20
D A L L A T E O R I A A L L A P R AT I C A
Figura 2
re al pilota solo le informazioni indispensabili per la condotta affidando al sistema automatico la verifica di ogni altro parametro che, in condizioni normali, non influisce sulle manovre di pilotaggio. Lattenzione del pilota viene richiamata solo in presenza di anomalia; in tal caso suggerita una procedura di verifica e/o di correzione. Larchitettura hardware si basa su un PC industriale compatto con sistema operativo Windows XP abbinato ad un display LCD industriale da 10.4 ad altissima luminosit (1600 cd/mq) che garantisce unottima resa visiva anche in condizioni di luce solare piena incidente sul display (fig. 2). I dati sono acquisiti da uninterfaccia dedicata denominata BlueBox, che consente di misurare tutti i parametri relativi alle condizioni di volo e dellavionica, trasferendoli allunit PC tramite comunicazione seriale ad alta velocit con protocollo Nmea. Linterfaccia sinottica sviluppata utilizzando sia gli oggetti grafici standard dellambiente LabWindows/CVI sia una libreria di oggetti ActiveX distribuita da Iocomp. La grafica stata progettata in forma mista analogico/digitale per sfruttare limmediatezza visiva delle rappresentazioni a barra/indice che riproducono gli strumenti tradizionali, abbinata allindicazione numerica che massimizza la precisione di lettura (fig. 3). Per rendere intuitivo il controllo del propulsore e dei principali impianti la grafica propone alcune rappresentazioni sinottiche richiamabili con apertura di finestre in sovrimpressione (figg. 4 e 5).
Figura 4
Figura 5
INTERFACCIA COMANDI
Linterfaccia comandi realizzata con una tastiera dedicata a cinque tasti posizionata a bordo schermo le cui funzioni sono riprogrammate dalle etichette rappresentate a video
Figura 3
Figura 6
21
D A L L A T E O R I A A L L A P R AT I C A
06
INTERFACCIA VOCALE
Lapplicazione gestisce anche uninterfaccia vocale con oltre duecento messaggi multilingua per informare il pilota degli eventi rilevanti per la condotta del velivolo o per seguire una qualunque check-list, anche in volo, senza necessit di lettura da testo. Tutti i parametri misurati con una frequenza variabile da 5 a 0,5 volte al secondo vengono registrati su disco allo stato solido svolgendo la funzione di scatola nera dal momento della messa in moto fino allatterraggio. Sono state inoltre implementate in forma automatica sia la gestione del Libretto di Volo con registrazione dellora di decollo, atterraggio e dei dati riepilogativi del volo tra cui la distanza percorsa, massima quota raggiunta, carburante impiegato, temperatura dellaria al decollo e atterraggio, sia la compilazione del Quaderno Tecnico di Bordo (QTB) con registrazione degli eventi anomali riferiti ad ogni volo, indicando il dettaglio dellora e del valore dei parametri. Questa funzione particolarmente utile per analizzare a terra gli eventi minori senza dover rivedere tutta la registrazione del volo e decidere eventuali interventi di manutenzione. Il sistema ha gi totalizzato alcune decine di ore di volo con risultati eccellenti e verr presentato nelle prossime manifestazioni aeronautiche come prodotto destinato ai velivoli di nuova produzione.
Figura 7
Figura 8
oltre due tasti programmabili sulla cloche per il richiamo delle funzioni di utilizzo pi frequente in volo. I gruppi di informazioni visualizzate sul display sono: informazioni riguardanti la condotta (velocit, altitudine, quota, posizione, assetto, ecc.) (fig. 6) informazioni riguardanti la rotta (fig. 7) misura delle temperature e delle pressioni di esercizio motore (fig. 8) controllo di stato dei principali apparati (superfici mobili, utenze elettriche, ecc.) misura del carburante imbarcato e consumato, controllo dello stato pompe e selettori, gestione delle riserve, calcolo dellautonomia residua (fig. 9) Il sistema BlueEfis garantisce la gestione avanzata delle segnalazioni di anomalia ottenuta implementando un sistema decisionale multicriterio in grado di incrociare pi informazioni per fornire sempre indicazioni attendibili in ogni condizione di volo. Il sistema ricalcola continuamente i limiti di normale funzionamento rispetto la temperatura e la pressione dellaria esterna. In caso di anomalia il sistema valuta la gravit del problema e suggerisce anche una procedura di controllo affinch il pilota non incorra nella catena degli errori.
Figura 9
CONCLUSIONE
Infine, stato inoltre integrato al sistema Efis standard un sofisticato ActiveX grafico proprietario in grado di riprodurre la visione sintetica dellambiente circostante basandosi sul modello matematico del terreno. Questa funzionalit permette un ulteriore miglioramento della sicurezza nella navigazione offrendo al pilota la visibilit del territorio anche in condizioni metereologiche marginali.
Readerser vice.it n. 617
Note sullautore
Paolo Pari, Amministratore DigiSky
22
D A L L A T E O R I A A L L A P R AT I C A
06
PROGETTO DARWIN:
stato realizzato un sistema di monitoraggio e di trasmissione a distanza dei dati raccolti da un sistema sperimentale di accumulo di idrogeno e fuel cell, installato su uno yacht a vela che ha circumnavigato il Sud America per sei mesi, senza possibilit di manutenzione, in ambiente estremo
l Progetto Darwin stato sponsorizzato da Enel e consisteva in un viaggio a bordo di Adriatica, uno yacht a vela di 22 metri per 50 tonnellate, seguendo la rotta, in senso opposto, del brigantino Beagle che circumnavig il Sud America con a bordo Charles Darwin, in occasione della prossima commemorazione del bicentenario (1809 - 2009) della nascita del famoso naturalista. Durante il viaggio, diversi gruppi di ricerca (oceanografi, naturalisti, geologi, climatologi, ecc.) sono stati ospiti a bordo ed hanno condotto numerosi esperimenti e osservazioni. La ricerca di Enel ha contribuito al progetto dotando Adriatica di generatori per la produzione di energia rinnovabile, che hanno permesso un sensibile risparmio di combustibile fossile, normalmente utilizzato dai generatori diesel per le utenze di bordo. Inoltre, stato installato e testato un sistema sperimentale di accumulo energetico che produce idrogeno, lo immagazzina sotto forma di idruri e lo riutilizza in una cella a combustibile PEM, fornendo alimen-
tazione a due delle utenze fondamentali per la navigazione (radar e luci di posizione) anche in condizioni di malfunzionamento del sistema elettrico standard di bordo.
23
D A L L A T E O R I A A L L A P R AT I C A
06
riguarda la trasmissione dei dati verso l'Italia, effettuata per mezzo di un sistema satellitare Inmarsat. Il cuore del sistema di acquisizione dati costituito da un Compact FieldPoint National Instruments installato a poppa in un quadro a tenuta stagna per esigenze di spazio, mentre lapplicativo che girava su di un laptop in plancia stato sviluppato utilizzando LabVIEW. Il programma costituito da una sezione di lettura dati dal Compact FieldPoint e da una stazione meteorologica collegata via USB (letture di tutti i dati una volta al secondo e successive medie al minuto e all'ora), da una di controllo di eventuali errori dovuti ad interruzioni di energia o altri disturbi (molto frequenti), da una di memorizzazione e di backup dell'intero set dei dati memorizzati ogni 24 ore e infine da una sezione autonoma che gestiva l'antenna satellitare Inmarsat collegata al PC per via seriale, per la quale stato scritto un driver completo che ha permesso l'invio via email, a cadenza bioraria, di set di dati mediati. Il driver stesso era in grado di verificare la copertura satellitare, la posizione via GPS (di cui l'antenna dotata) e l'avvenuto invio a buon fine dell'ultima email (quindi l'eventuale doppio invio in presenza di malfunzionamenti).
Per tutti i sei mesi di viaggio i dati sono stati ricevuti regolarmente in Italia, con la sola interruzione di pochi giorni dovuti ad una forte tempesta che ha imposto la temporanea rimozione dell'antenna per evitare danni strutturali. Un altro applicativo, con lettura pi rapida di alcune grandezze, stato utilizzato durante il collaudo del sistema per verificare le curve di caricamento/scaricamento del serbatoio di idruri e di funzionamento sia dell'elettrolizzatore che della fuel cell. Alla fine del viaggio Adriatica rientrata in Italia e si provveduto alla verifica delle condizioni del sistema, che si rivelato perfettamente funzionante, sia dal punto di vista delle apparecchiature che dell'hardware e software di acquisizione dati. Inoltre, nonostante non sia stato possibile, per motivi di tempo, scrivere un applicativo che girasse completamente sul Compact FieldPoint, molto pi affidabile del laptop, la qualit dei dati raccolti risultata molto buona.
CONCLUSIONE
I risultati ottenuti dalla sperimentazione sono di estrema utilit per valutare lapplicabilit di questo tipo di soluzioni, che comunque necessitano di ulteriore sviluppo tecnologico dal punto di vista dellefficienza energetica, in condizioni ambientali estreme e con scarse o nulle possibilit di interventi manutentivi per lunghi periodi di tempo.
PROBLEMI PARTICOLARI
Nonostante la velocit di lettura dei dati fosse ridotta (circa 40 grandezze a intervalli di un secondo), stato necessario sviluppare una serie di procedure per il controllo della coerenza dei dati raccolti, mediati e salvati. Una discreta quantit di misure stata automaticamente scartata dal software per problemi derivanti da disturbi elettrici e da interruzioni dellalimentazione del sistema o del laptop. Inoltre, le forti sollecitazioni meccaniche dovute soprattutto alla navigazione in mare agitato, potevano rendere precari o danneggiare irreparabilmente connessioni, contatti e cablaggi.
Note sullautore:
M. Schiavetti, Enel Produzione
24
SCUOLA DI LABVIEW
06
CONTROLLO
a cura di Matteo Foini
DELLINTERFACCIA UTENTE
Il VI Ser ver permette di accedere alle propriet e ai metodi del pannello frontale
uando scrivete dei programmi, spesso dovete cambiare gli attributi degli oggetti del pannello frontale da programma. Per esempio, potreste desiderare di rendere un oggetto invisibile fino a un certo punto dellesecuzione del programma. In LabVIEW, si usa il VI Server per accedere alle propriet e ai metodi del pannello frontale. Questa lezione spiega il VI Server, i Property Node (nodi delle propriet), i Control Reference (riferimenti dei controlli) e gli Invoke Node (nodi di chiamata).
Gli oggetti possono avere metodi e propriet. I metodi effettuano unoperazione, come la reinizializzazione di un oggetto al suo valore di default. Le propriet sono gli attributi di un oggetto. Le propriet di un oggetto possono essere la dimensione, il colore, la visibilit e cos via.
CLASSE DEI VI
I controlli non sono gli unici oggetti di LabVIEW che appartengono ad una classe. Il vostro VI appartiene alla classe dei VI e ha associate le sue propriet e i suoi metodi. Per esempio, potete usare i metodi della classe dei VI per terminare lesecuzione del vostro VI, per sistemare la posizione del pannello frontale e per prendere unimmagine dello schema a blocchi. Potete usare le propriet della classe dei VI per cambiare il titolo della finestra del vostro pannello frontale, per recuperare la dimensione dello schema a blocchi e per nascondere il pulsante di abbandono.
B. PROPERTY NODE
I Property Node danno accesso alle propriet di un oggetto. In alcune applicazioni, potreste aver bisogno di cambiare da programma laspetto del pannello frontale in risposta a certi dati di ingresso. Per esempio, se un utente inserisce una password non valida, potreste volere che cominci a lampeggiare un LED rosso. Un altro esempio cambiare colore a una traccia su un grafico. Quando i dati superano un certo valore, potreste voler mostrare una traccia rossa invece di una verde. I Property Node vi consentono di effettuare queste modifiche programmaticamente. Potete anche usare i Property Node per ridimensionare gli oggetti del pannello
TERMINOLOGIA OBJECT-ORIENTED
La programmazione orientata agli oggetti basata su oggetti. Un oggetto un membro di una classe. Una classe definisce cosa un oggetto capace di fare, quali operazioni pu effettuare (metodi) e quali propriet possiede, quali il colore, la dimensione e cos via.
26
SCUOLA DI LABVIEW
frontale, nascondere parti del pannello frontale, aggiungere cursori ai grafici da programma e cos via. I Property Node in LabVIEW sono molto potenti e hanno molti usi. Questa sezione descrive degli esempi di propriet specifiche che possono cambiare da programma lapparenza e la funzione degli oggetti del pannello frontale. Fate riferimento al LabVIEW Help per maggiori informazioni sui Property Node.
sulla propriet, cliccate con il tasto destro sul nodo e selezionate Change to Write dal menu rapido. Se la piccola freccia di direzione della propriet sulla destra, state leggendo il valore della propriet. Se la piccola freccia di direzione della propriet sulla sinistra, state scrivendo il valore della propriet. Se il Property Node nella figura 2 impostato su Read (Lettura), quando va in esecuzione d come dato di uscita un booleano True se il controllo visibile e un booleano False se esso invisibile. Suggerimento Alcune propriet sono di sola lettura (come la propriet Label) o di sola scrittura come la propriet Value (Signaling). Per aggiungere dei terminali al nodo, cliccate con il tasto destro e selezionate Add Element dal menu rapido o usate lo strumento Positioning per ridimensionare il nodo. Quindi, potete associare ad ogni terminale del Property Node una differente propriet dal suo menu rapido. Suggerimento I Property Node eseguono ogni terminale in ordine dallalto verso il basso. Alcune propriet usano i cluster. Questi cluster contengono diverse propriet alle quali potete accedere usando le funzioni dei cluster. Scrivere su queste propriet in gruppo richiede la funzione Bundle e leggere da queste propriet richiede la funzione Unbundle. Per accedere alle propriet raggruppate, selezionate dal menu rapido All Elements. Per esempio, potete accedere a tutti gli elementi nella propriet Position selezionando PropertiesPositionAll Elements dal menu rapido. Tuttavia, potete anche accedere agli elementi del cluster come propriet singole, come mostrato nella figura 3.
Quando create un Property Node, esso inizialmente ha un terminale che rappresenta una propriet che potete modificare per il corrispondente oggetto del pannello frontale. Usando questo terminale, potete impostare (scrivere) la propriet oppure ottenere (leggere) lo stato corrente di quella propriet. Per esempio, se create un Property Node per un controllo numerico digitale, esso appare sullo schema a blocchi con la propriet Visibleselezionata di default. Una piccola freccia appare sul lato destro di quel terminale, indicando che state leggendo il valore di quella propriet. Potete cambiare lazione in scrittura cliccando con il tasto destro sul terminale e selezionando Change To Write dal menu rapido. La scrittura di un booleano False sul terminale della propriet Visible fa sparire il controllo numerico dal pannello frontale quando il Property Node riceve i dati. Figura 3 - Propriet che utilizzano i cluster Un booleano True lo fa riapparire. Per avere informazioni sulla propriet, cliccate con il tasto destro sul nodo e poi selezionate Change C. RIFERIMENTI DEI CONTROLLI to Read dal menu rapido. Per impostare le informazioni Un Property Node creato da un oggetto del pannello frontale o da un terminale dello schema a blocchi un Property Node implicitamente collegato. Questo significa che il Property Node collegato alloggetto del pannello frontale. Che cosa succede se dovete inserire i vostri Property Node in un subVI?. Allora gli oggetti non sono pi situati sul pannello frontale del VI che contiene i Property Node. In questo caso avete bisogno di Property Figura 2 - Utilizzo dei Proper ty Node Node collegati esplicitamente. Potete creare un Property
27
SCUOLA DI LABVIEW
06
Node esplicitamente collegato collegando un riferimento a un Property Node generico. Se state costruendo un VI che contiene diversi Property Node o se state accedendo alla stessa propriet per parecchi controlli e indicatori, potete inserire il Property Node in un subVI e usare i riferimenti dei controlli per accedere a quel nodo. Un riferimento del controllo un riferimento a uno specifico oggetto del pannello frontale.
Nota Una stella rossa sul controllo Control Reference indica che il refnum di tipo strict. Fate riferimento alla sezione Strictly Typed and Weakly Typed Control References dellargomento Controlling Front Panel Objects del LabVIEW Help.
28
SCUOLA DI LABVIEW
scelta la classe.La classe viene scelta collegando un riferimento al Property Node, Questo un esempio di Property Node collegato esplicitamente: Esso non collegato ad un controllo fino a quando il VI non in esecuzione e un riferimento passato al Property Node. Il vantaggio di questo tipo di Property Node la sua natura
D. INVOKE NODE
Usate gli Invoke Node per accedere ai metodi di un oggetto. Diversamente dal Property Node, un singolo Invoke Node esegue solo un singolo metodo per unapplicazione o un VI. Selezionate un metodo usando lo strumento Operating per cliccare sul terminale del metodo o cliccando con il tasto destro sullarea bianca del nodo e selezionando Methods dal menu rapido. Potete anche creare un Invoke Node cliccando con il tasto destro sulloggetto, selezionando CreateInvoke Node e selezionando un metodo dal menu rapido. Il nome del metodo sempre il primo terminale nellelenco dei parametri dellInvoke Node. Se il metodo restituisce un valore, il terminale del metodo visualizza il valore restituito. Altrimenti il terminale del metodo non d alcun valore. LInvoke Node elenca i parametri dallalto verso il basso con il nome del metodo in cima e i parametri opzionali, che sono opachi, in basso.
METODI DI ESEMPIO
Figura 6 - Riferimenti dei controlli
generica. Poich esso non ha alcun collegamento esplicito ad alcun controllo, pu essere riutilizzato per pi controlli diversi, Questo generico Property Node disponibile nella palette Functions.
Un esempio di un metodo comune a tutti i controlli il metodo Reinitialize to Default. Usate questo metodo per reinizializzare un controllo riportandolo al suo valore di default in un qualsiasi punto del vostro VI. La VI class ha un metodo simile chiamato Reinitialize All to Default.
La figura 7 un esempio di metodo associato alla classe Waveform Graph. Questo metodo esporta limmagine del waveform graph sulla clipboard o su un file.
Readerser vice.it n. 625
Note sullautore
Laureato in ingegneria nucleare al Politecnico di Milano, Matteo Foini lavora in qualit di Technical Marketing Engineer presso National Instruments Italy
29
SCUOLA DI LABVIEW
06
LabVIEW permette di accedere ad altre applicazioni Windows utilizzando le tecnologie .NET o ActiveX
l termine .NET fa riferimento alla tecnologia .NET di Microsoft. Il framework .NET la base di programmazione dellambiente .NET per costruire, rilasciare ed eseguire applicazioni basate su Web, applicazioni smart client e Web service XML. quindi necessario installare il framework .NET. Per maggiori informazioni si pu consultare il sito Web MSDN.
Nota Creare e comunicare con oggetti .NET richiede il .NET Framework 1.1 Service Pack 1 o successivo. Inoltre, National Instruments raccomanda vivamente di utilizzare solo oggetti .NET nei progetti LabVIEW. Il termine ActiveX si riferisce invece alla tecnologia ActiveX e alla tecnologia OLE di Microsoft. Con ActiveX Automation, unapplicazione Windows, come LabVIEW, fornisce un set pubblico di oggetti, comandi e funzioni a cui altre applicazioni Windows possono accedere. In questa prima parte verranno discussi i seguenti argomenti: A. Richiamo di oggetti in LabVIEW utilizzando ActiveX B. Uso di LabVIEW come Client ActiveX C. Uso di LabVIEW come Server ActiveX D. Eventi ActiveX Nella seconda parte, che verr pubblicata sul numero di Settembre, verranno invece trattati i temi seguenti: E. Richiamo di oggetti in LabVIEW utilizzando .NET F. Implementazione di .NET G. Registriazione di Eventi .NET A. Richiamo di oggetti in LabVIEW utilizzando ActiveX Potete utilizzare LabVIEW come client ActiveX per accedere ad oggetti, propriet, metodi ed eventi associati ad altre applicazioni abilitate ActiveX. LabVIEW pu operare anche come server ActiveX, permettendo ad altre applicazioni di accedere ad oggetti, propriet e metodi di LabVIEW. Oggetti, propriet, metodi ed eventi ActiveX Le applicazioni abilitate ActiveX includono oggetti aventi propriet e metodi accessibili ad altre applicazioni. Gli oggetti possono essere visibili agli utenti, come nel caso di pulsanti, finestre, immagini, documenti ed aree di dialogo, o invisibili agli utenti, come oggetti di applicazioni. Potete accedere a unapplicazione accedendo a un oggetto asso-
ciato a quellapplicazione e settando una propriet o invocando un metodo di quelloggetto. Gli eventi sono le azioni eseguite su un oggetto, come cliccare un mouse, premere un tasto o ricevere notifiche circa fatti come lesaurimento della memoria o il completamento di task. Ogni volta che queste azioni si verificano sulloggetto, loggetto invia un evento per avvertire il contenitore ActiveX, insieme ai dati specifici allevento. Loggetto ActiveX definisce gli eventi disponibili per un oggetto. VI ActiveX, funzioni, controlli e indicatori Utilizzate i VI, le funzioni, i controlli e gli indicatori seguenti per accedere ad oggetti, propriet, metodi ed eventi associati ad altre applicazioni abilitate ActiveX: Usate il controllo automation refnum per creare un riferimento ad un oggetto ActiveX. Cliccate con il tasto destro su questo controllo sul pannello frontale per selezionare un oggetto dalla type library a cui volete accedere. Usate la funzione Automation Open per aprire un oggetto ActiveX. Usate il contenitore ActiveX per accedere ad un oggetto ActiveX sul pannello frontale e visualizzarlo. Cliccate con il tasto destro sul contenitore, selezionate Insert ActiveX Object nel menu abbreviato e selezionate loggetto a cui volete accedere. Usate il Property Node per leggere (get) o scrivere (set) le propriet associate ad un oggetto ActiveX. Usate lInvoke Node per invocare i metodi associati a un oggetto ActiveX. Usate la funzione Register Event Callback per gestire gli eventi che si verificano su un oggetto ActiveX. Usate il controllo e lindicatore variant per trasferire dati verso o da controlli ActiveX. Suggerimento Selezionate Tools.NET & ActiveXAdd ActiveX Controls to Palette per aggiungere file di controllo custom alla palette dei controlli ActiveX. B. Uso di LabVIEW come Client ActiveX Quando LabVIEW accede agli oggetti associati a unaltra applicazione abilitata ActiveX, agisce come client ActiveX. Potete usare LabVIEW come client ActiveX nei modi seguenti:
30
SCUOLA DI LABVIEW
Aprite unapplicazione, come Microsoft Excel, create un documento ed aggiungete dati al documento. Incorporate un documento, come un documento Microsoft Word o uno spreadsheet Excel, sul pannello frontale in un contenitore. Piazzate sul pannello frontale un pulsante o un altro oggetto di unaltra applicazione, come un pulsante Help che richiama il file help dellaltra applicazione. Linkate da unaltra applicazione un controllo ActiveX che avete costruito. LabVIEW accede a un oggetto ActiveX con il controllo automation refnum o il contenitore ActiveX, che sono entrambi oggetti del pannello frontale. Usate il controllo automation refnum per selezionare un oggetto ActiveX. Usate il contenitore ActiveX per selezionare un oggetto ActiveX visualizzabile, come un pulsante o un documento, e piazzatelo sul pannello frontale. Entrambi gli oggetti appaiono come controlli automation refnum sullo schema a blocchi. La fig. 1 illustra come LabVIEW, operando come client ActiveX, interagisce con le applicazioni server.
Chiudendo il riferimento si rimuove loggetto dalla memoria. Per esempio, potete costruire un VI che apre Microsoft Excel in modo che appaia sullo schermo dellutente, crei un workbook, crei uno spreadsheet, crei una tabella in LabVIEW e scriva tale tabella nello spreadsheet Excel. Consultate il VI Write Table To XL in labview\examples\ comm\ExcelExamples.llb per un esempio sulluso di LabVIEW come client Excel. Inserimento di un oggetto ActiveX sul pannello frontale Per inserire un oggetto ActiveX sul pannello frontale, cliccate con il tasto destro sul contenitore ActiveX, selezionate Insert ActiveX Object dal menu abbreviato e selezionate il controllo o il documento ActiveX che volete inserire. Potete settare le propriet di un oggetto ActiveX usando lActiveX Property Browser o le pagine delle propriet, oppure potete settare le propriet da programma usando il Property Node. Usate lInvoke Node per invocare i metodi associati con loggetto. Per esempio, potete visualizzare una pagina Web sul pannello frontale usando un contenitore ActiveX per accedere al controllo Microsoft Web Browser, selezionando la classe di metodi Navigate, selezionando il metodo URL e specificando lURL. Se usate il contenitore ActiveX, non dovete collegare il controllo automation refnum sullo schema a blocchi alla funzione Automation Open o chiudere il rifrimento alloggetto usando la funzione Close Reference. Potete collegare direttamente lInvoke Node o il Property Node perch il contenitore ActiveX incorpora lapplicazione chiamante in LabVIEW. Tuttavia, se il contenitore ActiveX include propriet o metodi che restituiscono altri automation refnum, dovete chiudere tali riferimenti addizionali. Design Mode per oggetti ActiveX Cliccate con il tasto destro su un contenitore ActiveX e selezionate AdvancedDesign Mode dal menu abbreviato per visualizzare il contenitore in design mode mentre editate il VI. In design mode non vengono generati eventi e non sono eseguite procedure di evento. La modalit di default la run mode, nella quale potete interagire con loggetto come farebbe lutente. Impostazione delle propriet ActiveX Dopo avere aperto un server ActiveX o avere inserito un controllo o un documento ActiveX, potete settare le propriet associate a quel controllo o documento usando lActiveX Property Browser, le pagine delle propriet e il Property Node. ActiveX Property Browser Usate lActiveX Property Browser per visualizzare e impostare tutte le propriet associate a un controllo o documento ActiveX in un contenitore ActiveX. Per accedere
LabVIEW accede alla type library del server per ottenere informazioni circa i suoi oggetti, metodi e propriet. LabVIEW pu eseguire azioni come invocare metodi, leggere o scrivere propriet e cos via. Accesso ad unapplicazione abilitata ActiveX Per accedere a unapplicazione abilitata ActiveX, usate il controllo automation refnum sullo schema a blocchi per creare un riferimento a unapplicazione. Collegate il controllo alla funzione Automation Open, che apre lapplicazione chiamante. Usate il Property Node per selezionare e accedere alle propriet associate con loggetto. Usate lInvoke Node per selezionare e accedere ai metodi associati con loggetto. Chiudete il riferimeno alloggetto usando la funzione Close Reference.
31
SCUOLA DI LABVIEW
06
allActiveX Property Browser, cliccate con il tasto destro sul controllo o documento nel contenitore sul pannello frontale e selezionate Property Browser nel menu abbreviato. Potete anche selezionare Tools.NET & ActiveXBrowse ActiveX Properties. LActiveX Property Browser un modo semplice per impostare le propriet di un oggetto ActiveX interattivamente, ma non potete usare il browser per impostare le propriet da programma e potete usare lActiveX Property Browser solo con oggetti ActiveX in un contenitore. LActiveX Property Browser non disponibile in run mode o mentre viene eseguito un VI. Pagine delle propriet ActiveX Molti oggetti ActiveX includono pagine di propriet, che organizzano le propriet associate con loggetto su tab separati. Per accedere alle pagine delle propriet ActiveX, cliccate con il tasto destro sulloggetto nel contenitore sul pannello frontale e selezionate il nome delloggetto nel menu abbreviato. Analogamente allActiveX Property Browser, anche le pagine delle propriet ActiveX sono un modo semplice per impostare le propriet di un oggetto ActiveX interattivamente, ma non potete utilizzarle per impostare le propriet da programma, e potete usare le pagine delle propriet solo con gli oggetti ActiveX in un contenitore. Le pagine delle propriet non sono disponibili per tutti gli oggetti ActiveX. Inoltre, le pagine delle propriet non sono disponibili in run mode o mentre il VI in esecuzione.
fa parte della National Instruments Measurement Studio User Interface ActiveX Library, quando la temperatura raggiunge o supera 85 gradi Fahrenheit. In questo caso, il controllo CWButton opera come un LED, cambia colori e visualizza Warning quando la temperatura raggiunge il limite, che lo stato on del controllo CWButton. Nota In questo esempio, potete utilizzare lActiveX Property Browser o le pagine delle propriet per impostare le propriet OffText, OffColor, OnText e OnColor per il controllo CWButton, perch non necessario impostare queste propriet da programma. C. Uso di LabVIEW come Server ActiveX Lapplicazione LabVIEW, i VI e le propriet e i metodi di controllo sono disponibili tramite chiamate ActiveX da altre applicazioni. Altre applicazioni abilitate ActiveX, come Microsoft Excel, possono richiedere propriet, metodi e singoli VI da LabVIEW, e LabVIEW opera come server ActiveX. Per esempio, potete incorporare un VI graph in uno spreadsheet Excel e dallo spreadsheet inserire dati negli input del VI ed eseguire il VI. Quando eseguite il VI, i dati sono plottati nel grafico. Consultate labview\examples\comm\freqresp.xls per un esempio duso delle propriet e dei metodi LabVIEW in uno spreadsheet Excel. LabVIEW supporta uninterfaccia ActiveX verso il VI Server. Tale interfaccia con il server permette alle applicazioni client di accedere da programma a LabVIEW. La fig. 3 illustra come LabVIEW opera come server ActiveX per interagire con le applicazioni client. La type library di LabVIEW, labview.tlb, fornisce informazioni circa oggetti, metodi e propriet di LabVIEW. Le applicazioni client possono accedere ai metodi e scrivere o leggere propriet del server ActiveX LabVIEW. Potete usare LabVIEW come server ActiveX, permettendo ad altri client abilitati ActiveX di richiedere propriet e metodi da LabVIEW e singoli VI. Per configurare LabVIEW come server ActiveX, selezionate ToolsOptions per visualizzare larea di dialogo Options. Selezionate VI Server: Configuration nel menu a tendina superiore e mettete un segno di spunta su ActiveX. Supporto per interfacce ActiveX Automation personalizzate Se state scrivendo un client ActiveX che accede a propriet e metodi di un server ActiveX usando LabVIEW, potete accedere alle interfacce custom esposte dal server. A tale scopo, non necessario utilizzare IDispatch. Tuttavia, lo sviluppatore del server ActiveX deve fare in modo che i parametri delle propriet e dei metodi in tali interfacce custom abbiano tipi di dati Automation (IDispatch). Lo sviluppatore del server deve fare in questo modo per esporre pi interfacce da un oggetto, anzich da pi oggetti.
Property Node Usate il Property Node per impostare le propriet ActiveX da programma. Per esempio, se usate un oggetto ActiveX per avvertire un utente quando una temperatura supera un limite, usate il Property Node per impostare la propriet Value delloggetto per specificare il limite. Lo schema a blocchi di fig. 2 illustra un esempio che cambia la propriet Value per il controllo ActiveX CWButton, che
32
SCUOLA DI LABVIEW
vento. Per creare un VI di callback, cliccate con il tasto destro sullinput VI Ref della funzione Register Event Callback e selezionate Create Callback VI nel menu abbreviato. LabVIEW crea un VI rientrante. Aprite il VI ed editate lo schema a blocchi per gestire levento. Il VI di callback contiene i seguenti elementi: Event common data contiene i seguenti elementi: Source un controllo numerico che specifica la sorgente dellevento, come LabVIEW o ActiveX. Un valore 1 indica un evento ActiveX. Type specifica quale evento si verificato. Questo un tipo enumerato per gli eventi dellinterfaccia utente e un tipo intero senza segno a 32 bit per le sorgenti ActiveX e altre sorgenti di eventi. Per gli eventi ActiveX, il tipo di evento rappresenta il codice del metodo, o ID, per levento registrato. Time il time stamp in millisecondi che specifica quando stato generato levento. Control Ref un riferimento allActiveX o allAutomation Refnum su cui si verificato levento. Event Data un cluster dei parametri specifici allevento gestito dal VI di callback. LabVIEW determina lappropriato Event Data quando selezionate un evento dalla funzione Register Event Callback. Se un evento non ha alcun dato associato ad esso, LabVIEW non crea questo controllo nel VI di callback. Event Data Out un cluster dei parametri modificabili specifici allevento gestito dal VI di callback. Tale elemento disponibile solo se levento ActiveX ha parametri duscita. (Opzionale) User Parameter il dato che si desidera passare al VI di callback quando loggetto ActiveX genera levento. Nota Potete usare un VI esistente come VI di callback purch il pannello dei connettori del VI che intendete utilizzare corrisponda al pannello dei connettori dei dati di evento. Il VI di callback deve essere rientrante e la reference al VI di callback deve essere strettamente tipizzato. Non potete eseguire chiamate sincrone a finestre di dialogo non modali da un VI di callback. Dovete chiamarle in modo asincrono da un VI di callback invocando un metodo Run VI e scrivendo una costante booleana FALSE allingresso Wait Until Done del metodo.
Readerser vice.it n. 626
D. Eventi ActiveX Per usare eventi ActiveX in unapplicazione, dovete registrare levento e gestirlo quando si verifica. La registrazione degli eventi ActiveX simile alla registrazione degli eventi dinamici. Tuttavia, larchitettura del VI di un evento ActiveX diversa dallarchitettura di un VI di gestione eventi. Un tipico VI di evento ActiveX formato dai seguenti componenti: Oggetto ActiveX per il quale desiderate generare un evento. Funzione Register Event Callback per specificare e registrare il tipo di evento che volete generare. VI Callback contenente il codice che dovete scrivere per gestire levento che specificate. Potete generare e gestire eventi relativi a oggetti ActiveX in un contenitore o relativi a oggetti ActiveX che specificate usando un Automation Refnum. Per esempio, potete chiamare un controllo ad albero Windows da un contenitore ActiveX e specificare che volete generare un evento Double Click per gli elementi visualizzati nel controllo ad albero. La funzione Register Event Callback un nodo ridimensionabile in grado di gestire pi eventi, analogamente alla funzione Register For Events. Quando cablate la reference di un oggetto ActiveX alla funzione Register Event Callback e specificate levento che volete generare per quelloggetto, state registrando loggetto ActiveX per quellevento. Dopo la registrazione, create un VI di callback che contiene il codice scritto per gestire levento. Eventi diversi possono avere formati dati differenti, quindi cambiare levento dopo avere creato un VI di callback potrebbe rompere i fili di connessione sullo schema a blocchi. Selezionate quindi levento prima di creare il VI di callback. Gestione di Eventi ActiveX Dovete creare un VI di callback per gestire eventi dai controlli ActiveX quando i controlli stessi generano gli eventi registrati. Il VI di callback viene eseguito al verificarsi delle-
Note sullautore
Laureato in ingegneria nucleare al Politecnico di Milano, Matteo Foini lavora in qualit di Technical Marketing Engineer presso National Instruments Italy
33
D A L L A C A RTA A L W E B
06
HTTP://WWW
Quando le nostre pagine non bastano, lenorme serbatoio del web pu dare una mano. Su una rivista c ar tacea, anche la pi voluminosa, sarebbe impossibile trattare per esteso tutti gli argomenti relativi a LabVIEW. In molti casi, tuttavia, sul web sono disponibili ar ticoli esaustivi o altri documenti, a cui rimandiamo i lettori interessati. Il gioco Cannons dimostra luso del supporto integrato in LabVIEW per la programmazione orientata agli oggetti, enfatizzando concetti chiave come lincapsulamento e la modularit. Questi principi aiutano a ridurre il numero di fili (connessioni) richiesti nelle parti del programma di pi alto livello e semplificano le operazioni di modifica dei subVI senza la necessit di cambiare il codice che li utilizza come componenti. Il main VI del progetto usa unarchitettura produttoreconsumatore e una struttura a eventi per reagire agli input dellutente. Link alla pagina: ni.com/italian infocode: it59xt
Uso del CAN con il LabVIEW Simulation Interface Toolkit Modello freni ABS
Questo esempio dimostra come potete utilizzare il CAN con il Simulation Interface Toolkit. Il modello quello di un sistema frenante ABS. In questo modello, i segnali di velocit del veicolo e delle ruote non sono collegati. Tali collegamenti verranno completati in un loop retroazionato utilizzando il DAQ, il CAN o una combinazione dei due. Link alla pagina: ni.com/italian infocode: it59xt
34
D A L L A C A RTA A L W E B
Comunicazione Bluetooth usando il modulo PDA di LabVIEW con dispositivi Palm OS o PocketPC
LabVIEW 7.1 e successivi includono il supporto per comunicazioni Bluetooth. Il modulo PDA supporta la comunicazione Bluetooth su dispositivi Palm OS 5.0 o successivi e Pocket PC 2003 con il driver Bluetooth Widcomm versione 1.4 o successive. Questo esempio mostra una semplice applicazione Bluetooth client e server che invia dati usando Bluetooth. Link alla pagina: ni.com/italian infocode: it59xt
35
06
Vi presentiamo una selezione di argomenti di discussione sul Forum di ILVG.it
36
Disattivazione periferica
Inviato: Gio Mar 06, 2008 6:17 pm Qualcuno sa dirmi come si riesce a disattivare una periferica (per esempio Pen drive USB) utilizzando LabView - Michele Lanciando un comando esterno puoi usare il metodo descritto qui: http://ask-leo.com/is_there_a_way_to_sa ... _file.html Altrimenti mi sa che ti devi cercare la dll corrispondente... penso che con sg (san google) non sia difficile. Ciao - P!Pio Lutilizzo di hotplug.dll troppo complicata per un operatore inesperto. Ci sarebbe Devcon di Windows che per nel caso di un card-reader interno non si pu usare perch rimuove il card-reader. Sul sito http://www.uwe-sieber.de ho trovato ejectmedia.exe che funziona perfettamente! Michele [continua su http://www.ilvg.it/ht/3836]
Michele
37
EVENTI
06
Ledizione 2008 del Forum Tecnologico sulla Strumentazione Vir tuale organizzato da National Instruments ha registrato la presenza di oltre 450 par tecipanti
ome riferiamo anche nelleditoriale, si svolta il 27 febbraio 2008 a Roma la quindicesima edizione italiana di NIDays e, anche questanno, la forte adesione allannuale conferenza mondiale dedicata alla Strumentazione Virtuale e al Graphical System Design ha confermato linteresse degli addetti ai lavori e del mondo accademico nei confronti di questo evento. Sono stati infatti oltre 450 i visitatori tra ingegneri, tecnici, sviluppatori e professori, desiderosi di scoprire gli ultimi sviluppi nei settori del controllo, del design, dellautomazione, della misura e dellacquisizione dati, che hanno partecipato alle conferenze e alle sessioni tecniche organizzate nel corso della giornata ed hanno visitato larea espositiva di 1.000 m2 e le 30 postazioni dimostrative. Quindici anni rappresentano una conferma dellimpegno costante di National Instruments nella condivisione e diffusione di esperienze e conoscenze che in questo suo percorso si avvale di una rete di contatti che vede coinvolti partner, aziende clienti e le principali testate giornalistiche di settore.
World, in rappresentanza dello sponsor Edizioni Fiera Milano, e rispettivamente da Eric Starkloff, Francis Griffiths e Tim Dehne per NI Corporation. Primo classificato Il Campo Eolico Sperimentale di Trento Sistema di acquisizione Dati da Sensori Distribuiti su Turbine Eoliche di R. Fedrizzi, Dipartimento di Ingegneria dellUniversit di Trento. Secondo classificato Sviluppo di un Sistema di Test per le Pompe Motorizzate ed i Serbatoi
dellAirbus A380 Ebh di A. Damiani, Bimal Automazioni. Terzo classificato Diagen, Sistema di Diagnostica Remota per Generatori Elettrici di Grande Potenza di A. Lugli, Sitem, e P. Bruzzone, G. Cresta, M. Manarini, A. Oldrati e M. Valgimigli, Ansaldo Energia.
LE CONFERENZE
La sessione plenaria - apertasi con la keynote di Tim Dehne, Senior Vice President Ricerca e Sviluppo di NI con una panoramica sullo stato dellarte e sulle pi recenti evoluzioni del Graphical System Design - ha offerto unampia visione del-
38
EVENTI
le tecnologie concorrenti, partendo dal superamento della legge di Moore, attraverso i processori multicore fino ad arrivare alle piattaforme risultanti dallintegrazione di queste tecnologie. Messaggio chiave del suo intervento: la combinazione delle nuove tecnologie concorrenti e la progettazione grafica di sistemi consente di realizzare sistemi di test ad elevate prestazioni in grado di soddisfare le crescenti richieste di prodotti di alta qualit. In altre parole, il futuro dipende dalla possibilit di trarre vantaggio dai benefici del parallelismo. A seguire, Alessandro Masi del Cern di Ginevra ha illustrato il sistema di controllo in tempo reale dei collimatori Large Hadron Collider, il nuovo acceleratore di particelle gestito mediante la strumentazione modulare PXI di National Instruments. Nel pomeriggio stato dato spazio allaspetto pratico: 4 moduli composti da quattro sessioni tecniche ciascuno si sono svolte in parallelo per dare la possibilit ai partecipanti di condividere esperienze e confrontarsi su problematiche comuni sulla base delle proprie esigenze di aggiornamento e formazione. Tra le novit di questanno, oltre alle 16 sessioni tecniche, due nuove aree pratiche: la LabVIEW Zone, che ha consentito di utilizzare direttamente LabVIEW 8.5 e tutte le novit della nuova release in abbinamento al sistema di acquisizione dati USB CompactDAQ, e larea Prove Pratiche di Automazione, dove toccare con mano le potenzialit del Programmable Automation Controller CompactRIO.
creazione di un sistema di visione industriale ad elevate prestazioni. Ampio spazio stato riservato anche alle prerogative dellapproccio meccatronico nella progettazione di macchine. Ha concluso la sessione una presentazione delle tecnologie offerte da National Instruments per la progettazione e la simulazione basate su modelli. Collaudo e acquisizione dati: Argomento centrale della sessione sono state le pi recenti tecnologie di acquisizione dati e collaudo: PXI Express, multicore, elaborazione Fpga e acquisizione dati intelligente, che offrono la possibilit di effettuare test basati su software, in altre parole, la strumentazione virtuale che si pone come punto di riferimento per le operazioni di test e misura (in figura: una schermata di LabVIEW SignalExpress). Soluzioni e applicazioni: Questa sessione tecnica ha offerto una panoramica di case study sviluppate dagli Alliance Partner di National Instruments e da utenti finali, quali Robotronix, Wintek, Geas, Pragma Engineering, Universit Politecnica delle Marche ed Enel Produzione.
Readerser vice.it n. 659
LE SESSIONI TECNICHE
Infine, le sessioni tecniche si sono articolate in quattro macro aree dinteresse: Tecnologie Software: Focus della sessione le nuove versioni di LabVIEW 8.5 e di LabWindows/ CVI 8.5, con la possibilit di sfruttare le tecnologie di ultima generazione tra cui la programmazione orientata agli oggetti. Progettazione, prototipazione e controllo: Gli argomenti di questa sessione hanno illustrato alcune tra le novit pi attese del settore machine vision, tra cui limplementazione di LabVIEW sulla nuova Smart Camera per la
EVENTI
06
a questanno il consueto appuntamento annuale con NIDays si arrichito di una versione itinerante per offrire unalternativa a chi non ha potuto partecipare alla data romana. NIDays si trasforma quindi in un tour itinerante in quattro citt italiane, Catania, Bologna, Ancona e Padova. In tutte le date, la keynote della mattina ha illustrato i benefici della Migrazione Parallela e delle potenzialit delle tecnologie multicore e concorrenti, le nuove funzionalit delle versioni 8.5 di NI LabVIEW e NI LabWindows/CVI. Successivamente, National Instruments ha presentato la piattaforma di test per applicazioni in banda base o RF con trasferimento dati ad altissima velocit tramite le tecnologie PXI Express e Raid; i vantaggi della strumentazione di misura via USB e lo stato dellarte sullacquisizione dati USB; la nuova NI Smart Camera per scaricare LabVIEW direttamente a bordo di una telecamera intelligente; infine, i nuovi NI CompactRIO con chassis e controller integrati, per completare la piattaforma embedded riconfigurabile di controllo avanzato nelle fasi di progettazione, prototipazione e distribuzione di applicazioni in volumi elevati. Durante il pomeriggio, Robotronix, Cate, Eurins e Gruppo Loccioni, Alliance Partner National Instruments, hanno illustrato lutilizzo dei prodotti hardware e software di National Instruments nel settore dellAutomazione e del Collaudo tramite casi applicativi. Alcuni prestigiosi atenei italiani hanno presentato esempi di utilizzo dei prodotti National Instruments e della strumentazione virtuale nella ricerca e nella didattica.
A seguire, i partecipanti hanno potuto mettere alla prova le proprie conoscenze nellarea adibita alle prove pratiche, ovvero speciali postazioni per lo svolgimento di esercitazioni su LabVIEW 8.5 e la piattaforma USB di acquisizione dati NI CompactDAQ (in figura). Nellarea espositiva i visitatori hanno potuto conoscere da vicino le ultime novit di prodotto National Instruments. Per scaricare le presentazioni online, si pu andare alla pagina web ni.com/italy/eventi
40
EVENTI
06
Il convegno sul test automatizzato online si ripropone nella sua 5a edizione il prossimo 5 giugno
hi non credeva nella capacit di coinvolgimento e di affiliazione di un evento virtuale, si dovuto ricredere. Tra gli evoluti strumenti di social networking oggi a nostra disposizione, levento virtuale forse lunico in grado di offrire una valida alternativa al tradizionale congresso, forum, convegno. Grazie allintermediazione digitale, ovvero mediante tecniche di live streaming, presentazioni online e chat, levento virtuale in grado di proporre una ricca offerta di contenuti e livello di interazione, comportando per un notevole risparmio di tempo e di denaro.
Sviluppo di Averna, Jean-Yves Allard. In qualit di espositore, Averna pu interagire live con i visitatori dello stand provenienti da quattro continenti contemporaneamente. Le presentazioni tecniche ricche di contenuti innovativi e le ultime novit del settore proposte dagli espositori fanno di Automated Test Summit un evento da non perdere - e senza bisogno di lasciare la propria scrivania. Aziende leader mondiali di sistemi di test e misura del calibro di Intel, Microsoft, Tektronix, Averna e Cal-Bay, parteciperanno allevento per condividere competenze tecniche ed
Per la seconda volta, levento Automated Test Summit organizzato da National Instruments, ovvero la pi avanzata occasione di aggiornamento su strategie e tecnologie nel settore del test automatizzato rivolta a tecnici e management delle principali aziende di elettronica, si rende disponibile ai frequentatori del Web per offrire un accesso comodo alle ultime tendenze tecnologiche sulla progettazione efficace di sistemi di test automatizzati, flessibili ed efficienti. Levento gratuito si svolger dal vivo marted 5 giugno: durante lintera giornata sar possibile assistere alla presentazione delle keynote (in lingua inglese), partecipare attivamente alle numerose sessioni tecniche e interagire dal vivo con gli espositori di alcune delle maggiori aziende di test grazie ad un ambiente espositivo virtuale. Sar anche possibile richiedere informazioni attraverso una chat dal vivo con consulenti tecnici di National Instruments in lingua italiana. La 5a edizione propone contenuti rinnovati e una veste grafica totalmente nuova e accattivante. Tutte le risorse rimarranno poi a disposizione dei visitatori della rete per altri 90 giorni. Automated Test Summit 2008 di National Instruments riunisce in tempo reale un pubblico globale che appartiene ai diversi settori industriali associati al test elettronico, afferma il vice presidente del dipartimento Ricerca e
esperienze sul campo. Mike Santori, Business and Technology Fellow di National Instruments, presenter la keynote Ottimizzare l'efficienza nel test. Gli argomenti dellevento di questanno includono: Strategie per la progettazione software a costi ridotti Ultime tendenze nella progettazione hardware Ottimizzare i sistemi di test ed incrementarne la durata Confronto tra esperti di test engineering I partecipanti possono registrarsi on-line allevento dal vivo di marted 5 giugno, a partire dalle ore 11.00 alla pagina web www.ni.com/testsummit.
ULTIMORA
National Instruments ha recentemente concluso un accordo con Fiera Milano Editore, che sar media partner unico dellevento VATS, Virtual Automated Test Summit 2008.
Note sullautore
Nadia Albarello, laureata in Lingue Moderne e Comunicazione alla Karl Franzens Universitt di Graz, Austria, lavora in qualit d Marketing Communications Manager presso National Instruments Italy.
41
EVENTI
06
MC4 FA POKER
Valerio Alessandroni
Si conclusa la quar ta edizione della mostra convegno dedicata alle tecnologie e ai prodotti per il Motion Control
o scorso 11 Marzo la sede di Bologna Congressi ha ospitato la quarta edizione della mostra convegno MC4 Motion Control for, organizzata da Fiera Milano Editore con il supporto delle riviste Automazione Oggi, RMO Rivista di Meccanica Oggi e Progettare. I primi a testimoniare il successo dellevento sono i numeri: ben 37 aziende sponsor hanno accolto 634 visitatori per una giornata interamente dedicata al Motion Control, dando vita a un evento in cui le aziende hanno messo in campo il meglio delle loro risorse, tecniche e umane, per introdurre i visitatori nella realt pi allavanguardia del settore. Rispetto alla passata edizione anche questanno la crescita stata netta: il numero delle aziende partecipanti aumentato del 37% (erano 27 lo scorso anno), mentre laffluenza
del 21% (523 visitatori nel 2007). Risultati cos incoraggianti sono stato il frutto dellunione di due forze: da un lato, le aziende, che hanno dato o rinnovato la fiducia nellevento; dallaltro, la collaudata formula della mostra convegno. Limmediatezza della disposizione e la linearit dei percorsi hanno garantito la massima resa della componente mostra, caratterizzata dalla presenza in numerosi stand di prodotti funzionanti. Lambiente a disposizione delle singole aziende si dimostrato del tutto adeguato per una efficace comunicazione con i visitatori, che hanno potuto trovare in MC4 Motion Control for un attualissimo vademecum per le loro esigenze specifiche di Motion Montrol. A questo proposito spicca ancor di pi lefficacia della formula che coniuga la componente espositiva, pi classica, con quella convegnistica: al piano inferiore, il concreto delle aziende con la loro offerta; al piano superiore una fitta agenda di incontri. Lappuntamento rinnovato per il 2009 con la quinta edizione della mostra convegno, che si oramai attestata nel panorama degli eventi specializzati quale momento di riferimento nel settore del Motion Control. Per maggiori informazioni: www.ilb2b.it/mc4, mc4@fieramilanoeditore.it
42
A P P U N TA M E N T I
06
Come sempre, vi segnaliamo i prossimi corsi di formazione di LabVIEW e i principali eventi internazionali che vedranno la partecipazione di National Instruments
CORSI DI LABVIEW
LABVIEW BASE 1: INTRODUZIONE
Milano: Roma: 19, 21 maggio 23, 25 giugno 26, 28 maggio 7, 9 luglio 10, 11 luglio Padova: 6, 8 maggio
CENTRI DI FORMAZIONE
Sede NI di Milano Via Anna Kuliscioff, 22 - 20152 Milano Tel: +39 02 41309217 - Fax: +39 02 41309215 E-mail: ni.italy@ni.com Filiale di Roma Pick Center Piazza Marconi, 15 - 00144 Roma Tel: +39 06 520871 - Fax: +39 06 52087409 E-mail: ni.italy@ni.com Sede Corsi Padova Presso il Centro di Formazione Certificato NI di I.R.S. srl Via Vigonovese 81/A - 35127 Padova Tel: +39 049 8705156 - Fax: +30 049 7625206 E-mail: osgualdo@irsweb.it Visitate ni.com/training/it per le descrizioni dettagliate dei corsi e per iscrivervi.
AUTOMOTIVE DAY
Parigi 26 giugno
AUTOMOTIVE FORUM
Torino 12 giugno
EPAC 2008
Genova dal 23 al 27 giugno
SIDISA 2008
Firenze dal 24 al 27 giugno
43
I N T E R V I S TA
06
INTERVISTA
Abbiamo intervistato Alberto Osgualdo di IRS (Ingegneria Ricerca Sistemi), un NICTC (National Instruments Certified Training Center) che ha un Centro di Formazione a Padova.
Quali sono i vantaggi che offrono i corsi di forD: mazione National Instruments? In particolare: pu riferirci testimonianze di partecipanti e feedback significativi, ossia esempi pratici di competenze acquisite per la risoluzione di problemi?
La decisione di unazienda di formare proprio personale pu essere dovuta alla necessit di dover affrontare con competenza nuovi strumenti di programmazione o allesigenza di approfondire e migliorare le performance nelluso di strumenti gi disponibili in azienda. La possibilit da parte degli utilizzatori LabVIEW di partecipare ai corsi di National Instruments comporta un vantaggio in pi per la conoscenza del prodotto perch da un lato hanno la possibilit di sfruttare le competenze dirette del produttore e daltra parte, nel caso del Centro di Formazione di IRS a Padova, di confrontarsi con tecnici con alta specializzazione ed esperienza diretta nella realizzazione di applicativi. IRS stessa al proprio personale neoassunto fa seguire tutti i corsi del calendario NI per raggiungere quel livello di rigore nella realizzazione dei programmi e quella ampiezza di conoscenze difficilmente attuabili con formazione casalinga o con il solo affiancamento ai tecnici pi esperti. Il sistema pi semplice di apprendimento sempre quello del tuffati in piscina e nuota o affondi che d innegabili risultati per la velocit di apprendimento di specifiche problematiche, ma dallaltro lascia evidenti lacune anche a distanza di anni dal primo approccio allambiente di sviluppo. I maggiori riconoscimenti ci vengono assegnati infatti proprio dai clienti che hanno gi una qualche esperienza da autodidatti e che riconoscono nei corsi di National Instruments (che, non dimentichiamo, sono corredati da una documentazione eccellente e da un percorso didattico ricco di esperienze pratiche) un fondamentale strumento per una preparazione completa.
ne un completamento della propria proposta. Nel 2005, in concomitanza con lampliamento della propria sede, ha deciso di rendere strategiche le attivit formative con lallestimento di unaula corsi dedicata. A quel punto divenire NICTC (National Instruments Certified Training Center) stato quasi un percorso obbligato. Inoltre vorrei sottolineare che anche le attivit di avvio e messa a punto dei sistemi che realizziamo sono in buona parte intese e organizzate come attivit di formazione per lutilizzo delle applicazioni sviluppate, ma le attivit formative strutturate consentono ai nostri clienti di affrontare con cognizione di causa le problematiche e le soluzioni che sono messe a loro disposizione con lutilizzo di LabVIEW, garantendo per i sistemi quelle attivit di manutenzione evolutiva che mantengono il sistema sempre aggiornato ed aderente alle necessit aziendali. anche per questo che spesso la formazione da ritenersi parte stessa dellattivit principale di IRS.
R:
Come viene garantita la qualit dei corsi e servizi D: erogati? Avete condotto survey per verificare il grado di soddisfazione?
motivo di grande stimolo per i nostri istruttori (in questo momento sono tre persone e a breve avremo un quarto istruttore) conoscere il livello di soddisfazione dei partecipanti ai corsi. Tale informazione viene raccolta sistematicamente alla conclusione di ogni corso e tiene conto sia di valutazioni che riguardano la struttura del corso stesso, sia del livello di efficienza della struttura logistica e del grado di preparazione e capacit comunicativa del docente. Devo dire che ad oggi le risposte sono state lusinghiere, sia che queste siano date da clienti che hanno acquistato anche altri prodotti e servizi di IRS, o da clienti che si sono limitati nel rapporto con IRS alla sola partecipazione al corso. Tali risultati sono di grande orgoglio per i miei colleghi e ci portano a ritenere valide le scelte fatte fino ad oggi, in primis la collaborazione anche in questo settore con National Instruments. Ma IRS ha un Sistema Qualit che le impone il miglioramento continuo: questi risultati positivi non sono quindi il nostro punto di arrivo, ma la lo stimolo per proporre soluzioni ancora migliori.
R:
Quali sono a suo parere le esigenze formative D: nell'area e nel settore applicativo a cui si rivolge IRS come NICTC?
Il Nordest dItalia una zona che ha proprie peculiarit, anche nel modo di affrontare la formazione. A parte qualche grossa realt, il tessuto industriale composto da piccole e medie aziende per le quali linvestimento in formazione spesso un costo anche importante che va valutato attentamente. Lazienda tipo spesso non arriva al corso appena sente lesigenza di risolvere il suo problema (di test e misura nella
Perch IRS ha deciso di diventare NICTC? Come si D: sposa questa attivit con il principale core busiR: ness dell'azienda, ovvero sviluppare sistemi?
IRS, che attualmente in Italia lunico Centro di formazione certificato da NI oltre a quelli di Milano e Roma gestiti in proprio da NI stessa, ha sempre fatto della formazio-
R:
44
I N T E R V I S TA
National Instruments, in collaborazione con IRS, amplier lofferta formativa disponibile con una serie di corsi orientati ai metodi di misura tramite lutilizzo di strumentazione basata su Personal Computer. La prima sessione dei nuovi corsi di misura a livello base e specialistico, prevista per il 23 giugno prossimo. In particolare, sono previsti i corsi seguenti.
a) La misura con il supporto del Personal Computer Corso base per non esperti di informatica, della durata complessiva di due giorni, dedicato a chi intende sviluppare competenze utili a confrontarsi con sviluppatori, progettisti di sistemi e fornitori di componenti per misura e acquisizione dati. richiesta una conoscenza di base di teoria della misura e alfabetizzazione informatica. Obiettivo del corso di fornire ai partecipanti, responsabili o tecnici di laboratorio e di produzione, le basi per poter affrontare le problematiche relative allutilizzo del PC per la gestione di misure di qualsiasi genere. b) Misure elettriche digitali Corso specialistico dedicato a tecnici che necessitano di informatizzare la misura di grandezze elettriche, siano queste specifiche (misure di macchine elettriche) o generali (misure elettriche su apparecchiature elettromecca niche o elettroniche). Obiettivo del corso fornire ai partecipanti tutte le conoscenze utili a definire completamente da un punto di vista informatico le migliori soluzioni per effettuare misure elettriche. Il corso, della durata di un giorno, dedicato a tecnici di laboratorio o di produzione, che abbiano gi una formazione di base di misure elettriche, che intendono sfruttare le potenzialit dei sistemi di acquisizione dati per risolvere problematiche di misura digitale di segnali elettrici, assieme alle possibilit di archiviazione, visualizzazione ed analisi dei segnali. c) Misure termodinamiche digitali Dedicato a tecnici che necessitano di informatizzare le misure di temperatura e termodinamiche pi in generale, per applicazioni nei settori pi svariati. Obiettivo del corso fornire ai partecipanti tutte le conoscenze utili a definire completamente da un punto di vista informatico le migliori soluzioni per effettuare misure di temperatura, di umidit, pressione. Il corso dedicato a tecnici di laboratorio o di produzione, che abbiano una formazione basilare di misure e che intendono sfruttare le potenzialit dei sistemi di acquisizione dati per risolvere problemi di misura digitale di grandezze termodinamiche, assieme alle possibilit di archiviazione, visualizzazione ed analisi dei segnali.
Per ogni informazione sui nuovi corsi di misura visitate le pagine dedicate ai corsi del sito web di IRS allindirizzo www.irsweb.it. fattispecie), ma appena si trova per cos dire impantanata nel risolvere le sue problematiche. Ecco allora che il corso diventa spesso scelta obbligata, e diventa anche oggetto di aspettative importanti: il servizio deve allora essere ancora pi attento e mirato, arrivando in molti casi a ritagliare attorno alle esigenze del cliente un percorso ad hoc studiato per la soluzione delle specifiche necessit aziendali (mi riferisco per esempio ai corsi onsite). Da questo punto di vista il fatto che i formatori di IRS siano tutte persone con una pluriennale esperienza di sviluppo applicativo e che lo siano a tuttoggi un enorme valore aggiunto per le aziende che intendono seguire i nostri corsi di formazione.
R:
Come accennavo in precedenza, la collaborazione in materia di formazione, nasce da lontano, potrei dire da quando IRS Alliance Member di NI e cio dal 1994, e ha trovato il suo naturale compimento nellallestimento del Centro di Formazione nel 2005. La collaborazione bidirezionale in quanto entrambe le parti riconoscono il valore aggiunto che la collaborazione d al progetto. Le capacit organizzative, di struttura e di innovazione di National Instruments ben si sposano con lesperienza di sviluppo software e integrazione di sistemi che IRS mette sul campo tutti i giorni. I corsi National Instruments inoltre sono preparati nei particolari e con grande cura, accompagnati da esaurienti materiali didattici e da un allestimento daula tecnicamente ottimale. Trovo inoltre interessante il buon numero di corsi che consentono approfondimenti differenziati e graduali allutilizzo di LabVIEW e agli altri temi del T&M e i percorsi di certificazione guidati e integrati nellofferta formativa.
il grado di collaborazione fra IRS e NI e D:Qual come questa si riporta alla formazione tecnica? R:
Proprio dallunione delle due anime sta nascendo una collaborazione che va al di l del rapporto organizzazione NI / competenza IRS. Da unanalisi congiunta sui dati provenienti dal nostro mercato di riferimento abbiamo ritenuto interessante proporre alcuni corsi di misura, non strettamente legati allambiente di programmazione. Abbiamo pensato che molto spesso gli interlocutori di IRS sono tecnici anche molto preparati sulle problematiche di misure ma non altrettanto sulle problematiche di digitalizzazione dei segnali. Ne scaturisce che dalla volont di approfondire le possibilit offerte nellinformatizzare il laboratorio o i test di fine linea e dallinteresse a confrontarsi con gli integratori di sistemi quali IRS possa essere interessante approfondire tematiche di test e misura applicate al computer senza dover necessariamente sapere come implementare dal punto di vista informatico tali soluzioni (a questo potr pensare un programmatore interno o esterno, come quelli di IRS). Nascono cos un corso di due giorni dal titolo Misure con lutilizzo del PC e altri corsi specialistici di un giorno, ognuno dedicato allapprofondimento di tematiche verticali (in preparazione sono Misure elettriche digitali e Digitalizzazione delle misure termodinamiche). Tali corsi, che entreranno a far parte del catalogo corsi di NI, sono in avanzato stato di realizzazione da parte degli esperti di IRS tanto che la prima edizione di questi corsi stata fissata a fine giugno.
Che cosa potr riservare la formazione National D: Instruments e chi potr rivolgersi nel prossimo futuro? Ha qualche anticipazione a riguardo?
R:
Osserviamo una costante crescita nella richiesta di partecipazione ai corsi di National Instruments sulla formazione LabVIEW, in particolare negli ultimi due anni, con un aumento per anno che si attesta ad oltre il 20% rispetto allanno precedente.
45
L A BV I E W E L AVO R O
06
AAA
RICERCHIAMO
SISTEMISTA SOFTWARE Rif.#: 445 Si ricerca per attivit su Roma n.1 Sistemista Sw con: Conoscenza Sistemi a Microonde / Radar; Conoscenze MATLAB, SIMULINK e LabVIEW. strumenti di laboratorio (oscilloscopio, analizzatore di spettro,..) Citt: Roma Informazioni aggiuntive Contratto: Full Time, Temporaneo/A contratto/A progetto Durata: 6-8 mesi con possibile estensione. InterConsulting S.r.l www.monster.it
Conoscete bene LabVIEW? Date unocchiata alle offerte di lavoro che abbiamo selezionato da ILVG.it
Ottima predisposizione allutilizzo dei sistemi informatici e buona conoscenza del pacchetto Office; Conoscenza della lingua inglese. Completano il profilo unelevata attitudine al lavoro di team, doti di precisione, flessibilit mentale e capacit proattiva nella gestione delle problematiche professionali. Linquadramento e la retribuzione saranno commisurati allesperienza professionale del candidato. Sede di lavoro: Milano Assystem Italia www.talentmanager.it
PROGETTISTA LABVIEW Importante gruppo internazionale francese, che opera in un ampio contesto di consulenza ingegneristica e di progettazione, nellottica del potenziamento della sede di Milano, ricerca progettista LabVIEW che si occuper delle attivit di sviluppo in Labview per i sistemi di automazione di banchi di tests e collaudo. Il candidato ideale in possesso dei seguenti requisiti: Laurea in Ingegneria Elettronica/Informatica/Telecomunicazio ni/Automazione o Diploma equivalente; Esperienza di almeno un anno maturata nella medesima mansione; Buona conoscenza dei linguaggi di programmazione LabVIEW e CompactRIO; Conoscenza del linguaggio di programmazione C; Conoscenza della strumentazione da laboratorio di elettronica;
ADDETTO ALLO SVILUPPO PAGINE WEB (identificativo annuncio: 90946) Numero di riferimento aziendale relativo all'annuncio1055/0801ASPW Data di scadenza dell'annuncio 23/6/2008 Area aziendale: Sistemi informativi/Hardware e Software Sede relativa all'annuncio: Milano Tipo di contratto offerto: Assunzione a tempo indeterminato Retribuzione: In funzione dell'esperienza Descrizione: 2A&F Consulting ricerca per conto di un'azienda che opera nel settore delle Telecomunicazioni un Addetto allo Sviluppo pagine Web su sistema embedded per router residenziali, C, C++, HTML, WEB UI, XML, software embedded, Linux, Unix, Java, JavaSwing, TCP/IP, HTTP, Labview, TCL. Questo annuncio rivolto anche ai neolaureati. Numero di posti offerti:1. Requisiti richiesti: Titolo di Studio: Laurea in Ingegneria Informatica o delle Telecomunicazioni oppure Laurea in Informatica. Conoscenze linguistiche: Inglese buono. 2A&F Consulting S.r.l. www.assioma.org
HYDRAULIC COMPONENTS EXPERT (Ref. HYD/tm) The Tasks The candidate will be involved in the following activities: Diesel injection system components development responsibility, from predevelopment to Start of Production and later during production, according to the process; Definition of technical requirements; external suppliers' design coordination; component and system validation planning; drawing release according to Product Programs and Powertrain Master Timings; Assessment of supplier offers regarding technical content, timing and project requirements; Assessment and consolidation of development results; Continuous product improvement and cost reduction planning & coordination; Evaluate and release design changes, according to GM tools and procedures. The Skills Degree in Mechanical Engineering or equivalent; Experience on Fuel injection systems development and testing; Knowledge on Unigraphics system or similar for fuel systems design and packaging; ASME standards; Good knowledge of Change Management Process for product quality improvement and cost reduction; Good knowledge of Microsoft Office, knowledge of LabVIEW, INCA, Matlab; Fluent English, team working, good communication and leadership skills are required. Funzione professionale: Ingegneria/Project management|Ricerca e Sviluppo Settore: Automotive Sede di lavoro: Piemonte Tipo di contratto: A tempo indeterminato Adecco Italia SpA www.talentmanager.it
46
L A BV I E W E L AVO R O
TEST EQUIPMENT DEVELOPMENT ENGINEER Riferimento Annuncio: A-192 2008 Sede di lavoro: Provincia di Milano Per importante societ operante a livello internazionale nel settore della progettazione e produzione di sistemi di collaudo automatico per apparati elettronici, con sede nellarea di MONZA, ricerchiamo le seguenti figure professionali: Test Equipment Development Engineer Rif. A-192 Ci rivolgiamo a giovani di et intorno ai 30 anni con laurea breve in materie elettroniche/meccatroniche e con esperienza quinquennale nello sviluppo di sistemi di collaudo automatico. Si richiede: conoscenza della strumentazione di misura di laboratorio controllata da computer conoscenza dei protocolli di comunicazione automotive programmazione LabVIEW/CVI conoscenza della lingua inglese parlata e scritta. richiesta la disponibilit a viaggiare per brevi periodi allestero. Buone capacit di relazione, affidabilit e determinazione sono tra i requisiti richiesti che completano il profilo del candidato ideale. La societ offre un inserimento in ambiente dinamico, tecnologicamente avanzato con un trattamento economico di sicuro interesse. Sintex S.r.l. www.e-sintex.it
Skill Required: A degree in Engineering or Computer Science (preferably M.Sc.). Experience with serial-mass production and mechanical structures. Good analytical and problem solving skills. Knowledge of test methodology, planning and execution. Production tests. Making testing equipment for production tests. Automatic reading/tests with i.e. LabVIEW. Programming in LabView and preferably also C++ and C#. To be based in Denmark Sector IT and Telecommunications. Chronos Consulting www.chronosconsulting.com
Buona capacit di comunicazione con collaboratori e clienti Disponibilit a trasferte Conoscenza lingua Inglese. Possesso patente B Le persone interessate (uomini e donne L. 903/77) sono pregate di inviare un dettagliato curriculum vitae corredato da fotografia, citando il rif. R8-220 ed evidenziando la dicitura Autorizzo ai sensi della Legge 196/2003 il trattamento dei dati da me trasmessi allindirizzo e.mail: labview@adocgroup.it. Sede di lavoro: Regione Piemonte - Torino provincia Adoc Group www.annuncidilavoro.info
TEST ENGINEER Ref. DKIT25948 Job Description: Our client is looking for a Test Engineer to be responsible for developing and implementing various methods of testing systems and equipment.
LABVIEW SOFTWARE ENGINEER ADOC Group cerca LabVIEW software engineer (R8-220) in Regione Piemonte Torino provincia Esperienza: Almeno 2 anni maturata nel settore Automotive o affini Titolo di studio: Laurea specialistica/magistrale o di vecchio ordinamento in Ingegneria dellAutomazione/Informatica/Elettronic a/Meccatronica Il lavoro: Il candidato/a si occuper della realizzazione in ambiente Labview di sistemi di acquisizione, gestione di sensori, sistemi di test. Il profilo: Il candidato deve avere le seguenti caratteristiche: Conoscenza Labview 8 o superiore Conoscenza Labwindows/CVI Conoscenza piattaforma CompactRIO (cRIO) Conoscenza problematiche di gestione sensori Conoscenza delle reti di comunicazione CAN (Controller Area Network) e tools Buona conoscenza della lingua inglese Predisposizione al lavoro in team
PROGETTISTA LABVIEW Importante gruppo multinazionale operante nella consulenza ingegneristica e di progettazione, nell'ottica del potenziamento del proprio organico, ricerca la figura di PROGETTISTA LABVIEW che si occuper delle attivit di sviluppo in Labview per i sistemi di automazione di banchi di testa e collaudo. La candidatura ideale: ha una Laurea in Ingengeria Elettronica/Informatica/Telecomunicazio ni/Automazione o Diploma equivalente ha una buona conoscenza dei linguaggi di programmazione Labview, C e della strumentazione da laboratorio elettronica conosce la lingua inglese Costituir titolo preferenziale breve esperienza maturata in ruolo analogo Informazioni aggiuntive Codice Riferimento: PL Persona da contattare: Elisabetta Mereghetti Adecco Italia SpA www.monster.it
47
INFORMATIVA AI SENSI DEL CODICE IN MATERIA DI PROTEZIONE DEI DATI PERSONALI Informativa art. 13, d. lgs 196/2003 I dati degli abbonati sono trattati, manualmente ed elettronicamente, da Edizioni Fiera Milano SpA titolare del trattamento Via Salvatore Rosa 14, Milano - per linvio della rivista richiesta in abbonamento, attivit amministrative ed altre operazioni a ci strumentali, e per ottemperare a norme di legge o regolamento. Inoltre, solo se stato espresso il proprio consenso allatto della sottoscrizione dellabbonamento, Edizioni Fiera Milano SpA potr utilizzare i dati per finalit di marketing, attivit promozionali, offerte commerciali, analisi statistiche e ricerche di mercato. Alle medesime condizioni, i dati potranno, altres, essere comunicati ad aziende terze (elenco disponibile a richiesta a Edizioni Fiera Milano SpA) per loro autonomi utilizzi aventi le medesime finalit. Responsabile del trattamento : Paola Chiesa. Le categorie di soggetti incaricati del trattamento dei dati per le finalit suddette sono gli addetti alla gestione amministrativa degli abbonamenti ed alle transazioni e pagamenti connessi, alla confezione e spedizione del materiale editoriale, al servizio di call center, ai servizi informativi. Ai sensi dellart. 7, d. lgs 196/2003 si possono esercitare i relativi diritti, fra cui consultare, modificare, cancellare i dati od opporsi al loro utilizzo per fini di comunicazione commerciale interattiva rivolgendosi a Edizioni Fiera Milano SpA Servizio Abbonamenti allindirizzo sopra indicato. Presso il titolare disponibile elenco completo ed aggiornato dei responsabili. Informativa resa ai sensi dellart. 2, Codice Deontologico Giornalisti Ai sensi dellart. 13, d. lgs 196/2003 e dellart. 2 del Codice Deontologico dei Giornalisti, Edizioni Fiera Milano SpA titolare del trattamento - rende noto che presso i propri locali siti in Milano, Via Salvatore Rosa 14, vengono conservati gli archivi di dati personali e di immagini fotografiche cui i giornalisti, praticanti e pubblicisti che collaborano con le testate edite dal predetto titolare attingono nello svolgimento della propria attivit giornalistica per le finalit di informazione connesse allo svolgimento della stessa. I soggetti che possono conoscere i predetti dati sono esclusivamente i predetti professionisti, nonch gli addetti preposti alla stampa ed alla realizzazione editoriale delle testate. I dati personali presenti negli articoli editoriali e tratti dai predetti archivi sono diffusi al pubblico. Ai sensi dellart. 7, d. lgs 196/2003 si possono esercitare i relativi diritti, fra cui consultare, modificare, cancellare i dati od opporsi al loro utilizzo, rivolgendosi al titolare al predetto indirizzo. Si ricorda che, ai sensi dellart. 138, d. lgs 196/2003, non esercitabile il diritto di conoscere lorigine dei dati personali ai sensi dellart. 7, comma 2, lettera a), d. lgs 196/2003, in virt delle norme sul segreto professionale, limitatamente alla fonte della notizia. Presso il titolare disponibile l'elenco completo ed aggiornato dei responsabili.
LabVIEW World - La prima rivista italiana per la comunit di LabVIEW Sede legale - Via Salvatore Rosa 14, 20156 Milano, tel +39 02 366092.1 fax +39 02 366092.280 www.edizionifieramilano.it Sede Operativa - Viale Espinasse 141, 20156 Milano tel. +39 02 366092.1 fax +39 02 366092.525 Direzione Sergio Maggioni Presidente Costante Casali Amministratore Delegato Alberto Taddei Publisher Nadia Albarello, Matteo Bambini, Matteo Foini, Alessandro Ricco, Alberto Taddei Direttore Responsabile - alberto.taddei@fieramilanoeditore.it Valerio Alessandroni Direttore Tecnico valerio.alessandroni@tiscali.it Alessandra Pelliconi, Segreteria- tel: 02 366092.527 alessandra.pelliconi@fieramilanoeditore.it Collaboratori: Nicola Bavarone, Michele Corr, Massimo Lorenzi, Marco Luciani, Enzo Nava, Alessandro Ricco, Emanuele Stucchi, Franco Trespidi, Halvor Snellingen Grafica e produzione Bimage.it Progetto grafico e Impaginazione Franco Tedeschi Coordinamento grafici - franco.tedeschi@fieramilanoeditore.it Alberto Decari Coordinamento DTP - alberto.decari@fieramilanoeditore.it Sate Zingonia Verdellino - BG - Stampa Giuseppe De Gasperis Sales Manager giuseppe.degasperis@fieramilanoeditore.it - tel. 02366092 523 - fax: 02 366092 230 Agenti Italia: PIEMONTE, LIGURIA, VALLE D'AOSTA R. Romeo/Publikappa tel: 011-723406 fax: 011-723.406 cell 335-5304196 VENETO, TRENTINO ALTO ADIGE, FRIULI VENEZIA GIULIA Idelfonso Elburgo tel: 049-8642.988 fax: 049-8642989 cell 328-8855203 International Sales U.K.-SCANDINAVIA - OLANDA - BELGIO The Huson European Media Gerry Rhoades-Brown tel: +44-1932-564999 fax: +44-1932-564998 SWITZERLAND: Iff media ag Carla Widmer tel: +41-52-6330888 fax: +41-52-6330899 GERMANIA e AUSTRIA: Mediaagentur Adela Ploner tel: +49-8131-3669920 fax: +49-8131-3669929 USA: Huson European Media Usa Ralph S. Lockwood tel: +1-408-8796666 fax: +1-408-8796669 TAIWAN: Worldwide Services Stuart Phillips-Laurie tel: +886-4-2325-1784 fax: +886-4-2325-2967 Abbonamenti N. di conto corrente postale per sottoscrizione abbonamenti: 48199749 intestato a:Edizioni Fiera Milano SpA, Via Salvatore Rosa 14, 20156 Milano. Si accettano pagamenti anche con le principali carte di credito. Per gli utenti Developer Suite e standard Service Program di National Instruments gi incluso labbonamento alla rivista Abbonamento annuale (4 numeri): E 20,00 Abbonamento per l'estero (4 numeri) E 40,00 Prezzo della rivista: E 5,00 - Arretrati: E 10,00 Testata associata Associazione Nazionale Editoria Periodica Specializzata Edizioni Fiera Milano iscritta al Registro Operatori della Comunicazione n 11125 del 25/07/2003. Autorizzazione alla pubblicazione del tribunale di Milano n 754 del 11/12/2006. Tutti i diritti di riproduzione degli articoli pubblicati sono riservati. Manoscritti, disegni e fotografie non si restituiscono. LabVIEW World ha frequenza trimestrale, per un totale di 4 numeri all'anno. Tiratura del presente numero: 3.000 copie.
Pubblicit
48