Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
E 5,00
MAGGIO
2009
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 BV I E W
UMANO-ELETTRONICA
SCENARIO
10
SOMMARIO
10
SEI!
06
Oltre ad organizzare propri corsi e seminari, National Instruments sar presente a numerosi eventi
46 LABVIEW E LAVORO
AAA
A TU PER TU
PROTOTIPAZIONE
Valerio Alessandroni
I prototipi sono molto importanti per convincere un potenziale cliente o un finanziatore circa la bont delle proprie idee. Ecco alcune semplici regole per non sbagliare
ome tecnico o ricercatore, forse qualche volta avete sognato l'idea di un prodotto che pensate possa avere un grande valore di mercato. Per sviluppare pienamente la vostra idea, forse dovrete tuttavia fare i conti con la vostra mancanza di competenza o esperienza. Non preoccupatevi, esiste una strada che porta al successo. Ne abbiamo discusso con John Hanks, vice presidente del marketing di prodotto per acquisizione dati e controllo industriale presso National Instruments.
D: Ci spieghi in sintesi la prima regola R: Le idee sono economiche Dato il mondo connesso e
orientato a Internet nel quale viviamo, le idee sono diventate economiche e probabilmente lo diventeranno ancora di pi con il passare del tempo. I costi riguardano la prova e la verifica di ci che ha un valore economico. Un buon prototipo spesso il modo migliore per iniziare un dialogo con i potenziali clienti e provare il valore della vostra idea.
prototipo nelle mani del cliente ed ottenere un feedback reale sul valore della vostra innovazione, la probabilit di successo commerciale aumenta notevolmente. Se volete trasformarvi in imprenditori e fare uscire dalla vostra testa l'idea che avete avuto, conviene sviluppare il vostro prototipo seguendo otto regole.
D: Qual il modo migliore per trasformare un'idea D: Passiamo alla seconda regola innovativa in un prodotto commerciale? R: Iniziate da un progetto su carta Potreste essere R: Se riuscite a dimostrare o, ancora meglio, a mettere un ansiosi di iniziare a scrivere codice o a progettare
l'elettronica troppo rapidamente. Combattete la fretta. Scrivere del codice senza una reale considerazione di diversi fattori di progettazione porta a mal di cuore e a molto lavoro da rifare. Iniziate da un semplice progetto su carta. Per il prototipo di un'interfaccia utente o un software Web, un progetto su carta efficiente ed efficace per prendere rapidamente in esame tutte le funzionalit. Potete chiedere ai colleghi, ed eventualmente ai clienti, di fornirvi un feedback sulla posizione di immagini, testo, pulsanti, grafici, menu o selezioni a tendina. I progetti su carta sono economici e pi utili delle parole.
Fig. 1 - Afferma John Hanks, vice presidente del marketing di prodotto per acquisizione dati e controllo industriale presso National Instruments: "Con un prototipo, la probabilit di successo commerciale di un'idea innovativa aumenta notevolmente"
obiettivi e perseguiteli. La prototipazione conviene per due buone ragioni: la prima quella di testare la fattibilit di un'architettura hardware o software, la seconda quella di creare una dimostrazione ed ottenere feedback dai clienti, in modo che possiate assegnare un prezzo e dare un valore alla vostra innovazione. Tenete presenti questi obiettivi e state attenti a non innamorarvi del processo. La prototipazione divertente e gli innovatori amano sperimentare, ma dovete cercare di investire solo il tempo e il lavoro sufficienti per raggiungere gli obiettivi.
A TU PER TU
10
senza dimenticare la modularit. I grandi prototipi sono spesso modulari, il che significa che potete adattarli rapidamente in modo da soddisfare esigenze impreviste dei clienti. Alla fine, sono i clienti che decidono come usare il vostro prodotto, non voi. Inserite nel progetto opzioni di espansione, prestazioni, packaging e minor costo.
meno di 60 secondi. Nelle presentazioni, che siano rivolte a un nuovo dipendente o a un finanziatore, arrivate alla dimostrazione il pi velocemente possibile. Se la dimostrazione divertente, tutto il resto andr a posto.
zione ideale quella di progettare un prototipo che potete produrre e distribuire in elevati volumi. Non molti tool di prototipazione possono mantenere questa promessa. Tipicamente, si rinuncia alle prestazioni per la flessibilit del progetto. Cercate tool di prototipazione che vi permettano di scalare il vostro prototipo dal laboratorio al mercato.
D: E a questo punto? D: National Instruments offre dei tool che R: Progettate la riutilizzabilit del prodotto finale La situa- possono favorire il processo di prototipazione?
R: Certamente. La piatta-
getti hardware, un potenziale motivo di perdite di tempo e insoddisfazioni farsi catturare in infinite analisi di ottimizzazione dei costi nelle prime fasi della progettazione del prototipo. I costi sono sempre importanti, ma l'obiettivo del vostro prototipo rimanere alla portata di un progetto redditizio. Inizialmente, concentratevi sulla dimostrazione del valore della vostra innovazione ed eseguite il progetto all'insegna della modularit. Bench ci sia frustrante, il vostro progetto potrebbe seguire molti percorsi, che non portano necessariamente al valore. Puntate ad assicurarvi il vostro primo gruppo di clienti, poi lavorate sull'ottimizzazione dei costi. Il prototipo deve ispirarsi a valori medi o mettere in risalto le caratteristiche innovative dell'idea iniziale? Bisogna evitare la 'ricaduta nella media' Nella prototipazione, la tendenza quella di sviluppare qualcosa di semplice, anzich qualcosa che abbia un fattore sorprendente. Tenendo fede alla vostra visione, dovete fare in modo che il vostro prototipo catturi il concetto originale della vostra innovazione.
D: Finora non abbiamo parlato di costi R: Evitate di concentrarvi troppo presto sui costi Per i pro-
forma per la progettazione grafica di sistemi di National Instruments, che include LabVIEW e hardware flessibile commerciale, mette a disposizione di tecnici, ricercatori o docenti una delle vie pi rapide per ottenere un prototipo funzionante. Considerate quindi l'uso dei tool di prototipazione rapida di National Instruments per trasformare la vostra idea in realt. Pi rapidamente sviluppate il vostro prototipo, meglio . E' inoltre possibile scaricare un e-kit di prototipazione National Instruments visitando ni.com/info ed inserendo il codice nsi8402.
Fig. 2 - "I costi sono sempre impor tanti, ma l'obiettivo del vostro prototipo rimanere alla por tata di un progetto redditizio"
Pu citare qualche esempio di utilizzo di questi tool? La flessibilit e la produttivit dei tool National Instruments si sono dimostrate utili nel portare rapidamente un prototipo a funzionare dalle apparecchiature medicali ai macchinari industriali, ai sistemi di test automatizzati. Vediamo due esempi di clienti National Instruments che hanno utilizzato il software LabVIEW ed il sistema hardware embedded CompactRIO per prototipare le loro idee. Iniziamo da Sanarus Medical, che ha sviluppato il prototipo di un'apparecchiatura medicale utilizzata per il trattamento di pazienti con tumori al seno, secondo una procedura meno invasiva e quasi indolore. Con i tool National Instruments, un prototipo pienamente funzionante stato realizzato rapidamente da un ingegnere meccanico con scarsa esperienza in campo embedded. Gli ingegneri di Boston Engineering hanno invece realizzato il prototipo di un chiosco fotografico che stampa istantaneamente immagini digitali. Per lo sviluppo dei prototipi, in precedenza era utilizzato hardware custom. Con la tecnologia LabVIEW FPGA e i tool hardware commerciali di National Instruments, stato possibile sviluppare pi rapidamente i prototipi.
D: R:
D: R:
vostro prototipo dovrebbe essere facile da dimostrare. Con i clienti, i finanziatori e i potenziali dipendenti, dovete partire con forza e presentare subito le capacit pi interessanti. Non procedete secondo un crescendo. L'intervallo di attenzione della maggior parte delle persone limitato a
EVENTI
Progettazione Grafica di Sistemi. Tra le novit di prodotto illustrate segnaliamo gli approfondimenti sulle nuove tecnologie software di National Instruments, tra cui LabVIEW 8.6 e LabWindows/CVI 9.0, sui nuovi dispostivi embedded NI Single-Board RIO, sui nuovi analizzatori e generatori di segnale vettoriale PXI Express a 6,6 GHz, sulla nuova gamma di prodotti NI FlexRIO per incrementare le prestazioni degli I/O basati su FPGA per i sistemi di test PXI e sulla nuova piattaforma Ethernet deterministica.
readerser vice.it n. 1064
Tutte le presentazioni di Tour NIDay 09 sono disponibili alla pagina web ni.com/italy/eventi.
COMSOFT
Specialisti nel PROFIBUS
Soluzioni National Instruments disponibili con tecnologia PROFIBUS cRIO PB
Modulo Master/Slave PROFIBUS DP per sistemi cRIO della National Instruments
readerservice.it n.233 Produttore: COMSOFT GmbH | Wachhausstr. 5a | 76227 Karlsruhe | Germania Tel.: +49- (0) 721 - 9497 - 291 | Fax: +49- (0) 721 - 9497 - 299
Contatto commerciale: SOLINTEC AUTOMAZIONE SNC | Via 8 Marzo 1/B | 2040 Cavena B.za (MI) | Italia | Tel.: 02 - 95336189 | Fax: 02 - 953354
W H AT ' S N E W
10
ALTRE
Per maggiori informazioni, consultate LabVIEW Help: Edit Multiple Properties. Breakpoint Manager Il debugging dei programmi diventato pi facile in LabVIEW 8.6 grazie all'aggiunta del Breakpoint Manager. Invece di gestire separatamente ciascun breakpoint, potete usare il Breakpoint Manager per controllare simultaneamente pi breakpoint per uno o pi VI. Potete anche usare il manager per abilitare, disabilitare e cancellare breakpoint da questo stesso punto di controllo.
Ogni cambiamento di propriet si riflette sugli oggetti selezionati del pannello. La mancanza di propriet comuni agli oggetti indicata dal messaggio illustrato nella figura 3.
Fig. 1 - Selezionate pi oggetti del pannello frontale, cliccate con il tasto destro e selezionate Proper ties
Quando appare la finestra di dialogo Properties, notate che il numero di oggetti che state modificando viene visualizzato sulla barra del titolo e che le propriet condivise vengono raggruppate usando i tab.
Fig. 3 - Quando non vi sono propriet comuni disponibili, viene visualizzato questo messaggio
Vi sono due metodi per aprire il manager: selezionare View>>Breakpoint Manager o cliccare con il tasto destro su qualsiasi oggetto dello schema a blocchi e selezionare Breakpoint>>Breakpoint Manager.
W H AT ' S N E W
La Palette API consiste di due VI: Read Palette.vi e Write Palette.vi. Il Read Palette.vi restituisce i dati sulle propriet di una palette, come nome, colore dell'icona e formato di visualizzazione. Il Write Palette.vi applica delle modifiche alla vostra palette. Usate linvoke node Refresh Palettes per effettuare programmaticamente un refresh della vostra palette dei controlli e delle funzioni dopo avere effettuato dei cambiamenti.
Per maggiori informazioni sul breakpoint manager, consultate LabVIEW Help: Breakpoint Manager.
Tunnel>>Find. Cancellate i tunnel collegati cliccando con il tasto destro su un tunnel collegato e selezionando Linked Input Tunnel>>Clear.
Per maggiori informazioni su questo argomento, consultate LabVIEW Help: Tunnel Linking. Palette API Con le nuove funzioni Palette API in LabVIEW 8.6, potete strutturare e integrare programmaticamente le vostre palette custom. Usate questa funzionalit per aggiungere i vostri VI e le Fig. 6 - Creazione di collegamenti tra ingressi e uscite vostre palette alla struttura di palette Per trovare i tunnel collegati, usate il LabVIEW e customizzare le palette esiFind cliccando con il tasto destro su un stenti per adattarle alle vostre preferentunnel e selezionando Linked Input ze di programmazione.
Nota: l'uso di questa funzionalit modifica i file sorgente e non potete invertire automaticamente tali modifiche. Se desiderate semplicemente editare l'aspetto di una palette di LabVIEW e non volete cambiare il codice sorgente della palette, considerate l'uso di Tools>>Advanced>>Edit Palette Set. Per vedere un esempio pronto sull'uso di Palette API, aprite il LabVIEW Example Finder in Help>>Find Examples e cercate palette.
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
10
LE NOVIT NEL
NUOVI VI E FUNZIONI
Questo paragrafo descrive i nuovi VI che sono stati introdotti nella palette del LabVIEW 8.6 Mobile Module. Supporto delle funzioni di sincronizzazione Il Mobile Module supporta ora le seguenti funzioni di sincronizzazione: Funzioni Advanced Notifier Waiting utilizzate per evitare perdite di dati e altri problemi quando si usano ripetutamente le funzioni con differenti notificatori. La palette include le funzioni Wait on Notification with Notifier History e Wait on Notification from Multiple with Notifier History. Funzione Lossy Enqueue Element aggiunge un elemento a una coda, usata per comunicare dati fra parti di uno schema a blocchi o da un altro VI. A differenza della funzione Enqueue Element, questa funzione non attende che diventi disponibile spazio nella coda. Se nella coda non c' spazio disponibile, rimuove un elemento dalla testa della coda e lo scarta per fare spazio.
Fig. 3 - Usate la Struttura In Place Element Structure per incrementare l'efficienza della memoria e dei VI
Fig. 1 - Abilitazione della navigazione da tastiera impostando l'ordine di tabulazione sul vostro VI Mobile
W H AT ' S N E W
Fig. 5 - Abilita l'inlining per eliminare l'overhead e incrementare l'ottimizzazione del codice
Nuove opzioni di generazione del codice a livello di progetto Potete ora allocare costanti per array, cluster, stringhe, variant e forme d'onda nell'area di dialogo Build Specification Properties. Il LabVIEW Mobile Module 8.6 offre opzioni di build che vi permettono di allocare memoria per le costanti la prima volta che vengono utilizzate, fuori del loop contenente, quando il VI che contiene le costanti viene richiamato o quando inizia l'esecuzione di un'applicazione compilata su un target. La memoria per le costanti pu essere deallocata quando le costanti non sono pi in uso, quando finisce l'esecuzione del VI contenente le costanti o quando finisce l'esecuzione dell'applicazione compilata sul target. Task dinamici per l'acquisizione dati Con il rilascio del DAQmx Base 3.2, l'acquisizione dati per dispositivi Mobile pu essere eseguita utilizzando task dinamici. I task dinamici vengono creati al runtime delle applicazioni usando l'API NI-DAQmx Base. A differenza dei task statici, i task dinamici eliminano la dipendenza dall'utility di configurazione dei task, garantiscono codice sorgente autodocumentante e riducono il tempo di sviluppo. Poich i task sono configurati dinamicamente, un singolo eseguibile pu funzionare su molti tipi diversi di dispositivi e configurazioni.
Fig. 6 - Usate le Build Specifications Proper ties per configurare l' allocazione e la deallocazione di costanti
Nuovi controlli sul pannello frontale Sui target Windows Mobile ora supportata la listbox multicolonna. La listbox pu essere utilizzata per fornire agli utenti un elenco di elementi dai quali selezionare. Con la listbox multicolonna, potete visualizzare pi informazioni per ciascun elemento, come le dimensioni dell'elemento e la data della sua creazione.
Nuove opzioni specifiche di generazione del codice Potete ora eseguire l'inlining di subVI nei chiamanti per eliminare l'overhead e incrementare l'ottimizzazione del codice. L'inlining dei subVI utile soprattutto per i piccoli subVI, i VI con molte chiamate in un loop o i subVI con un solo punto di chiamata. Impostate le opzioni di generazione del codice per il vostro VI Mobile nell'area di dialogo VI Properties.
10
MODELLI E METODI DI
S am Shearman
on il crescente uso degli strumenti di misura digitali nei processi di test e misura, l'acquisizione di grandi quantit di dati diventa sempre pi semplice. Tuttavia, i metodi di elaborazione ed estrazione di informazioni utili dai dati acquisiti diventano un problema. Durante il processo di test e misura si nota spesso una relazione matematica fra i valori osservati e le variabili indipendenti, come la relazione fra una misura di temperatura, un valore osservabile, e l'errore di misura, una variabile indipendente che deriva da un dispositivo di misura impreciso. Un modo per trovare la relazione matematica esistente il curve fitting, dove si richiede una curva approssimante che avvicini il pi possibile i punti dati. Si pu utilizzare il curve fitting per eseguire le operazioni seguenti: Ridurre il rumore e addolcire landamento dei dati Trovare la relazione matematica fra le variabili e utilizzare tale funzione per eseguire ulteriori elaborazioni dei dati, come la compensazione degli errori, il calcolo di velocit e accelerazione, e cos via Stimare il valore di una variabile fra campioni di dati Stimate il valore di una variabile esternamente al campo dei campioni di dati Questo articolo descrive i diversi modelli e metodi di curve fitting e i VI LabVIEW che si possono utilizzare per eseguire il curve fitting.
VI di Fit Esponenziale (Exponential Fit) VI di Fit di Potenza (Power Fit) VI di Fit di Picco Gaussiano (Gaussian Peak Fit) VI di Fit Logaritmico (Logarithm Fit) Questi VI creano diversi tipi di modelli di curve fitting per il set di dati. Consultate il LabVIEW Help per informazioni sull'uso di questi VI. I grafici riportati nella figura 1 mostrano i diversi tipi di modelli di fitting che si possono creare con LabVIEW.
Prima di fittare il set di dati, necessario decidere quale modello di fitting usare. Una scelta impropria, per esempio l'uso di un modello lineare per fittare dati logaritmici, porta ad un risultato di fitting non corretto o ad un risultato che determina in modo impreciso le caratteristiche del set di dati. Pertanto, dovete scegliere prima di tutto un modello di fitting appropriato sulla base della forma di distribuzione dei dati e giudicare quindi se il modello adatto in funzione del risultato.
Ogni VI dei modelli di fitting in LabVIEW ha un ingresso Weight. Per default, l'ingresso Weight 1, stando a significare che tutti i campioni di dati hanno la stessa influenza sul risultato del fitting. In alcuni casi, nel set di dati esistono dei punti isolati a causa di fattori esterni come il rumore. Se si assegna ai punti isolati lo stesso peso dei campioni di dati, si rischia un effetto negativo sul risultato del fitting. Pertanto, si pu regolare il peso dei punti isolati, anche impostando a 0 il loro peso, per eliminare l'influenza negativa. Per sviluppare un'applicazione di curve fitting si pu anche usare il Curve Fitting Express VI presente in LabVIEW.
base al set di dati. Per esempio, i metodi di fitting LAR e biquadratico sono metodi di fitting robusti. Utilizzate questi metodi se nel set di dati esistono punti isolati. I paragrafi seguenti descrivono i metodi di calcolo LS, LAR e biquadratico in dettaglio.
METODO LS
Il metodo dei minimi quadrati inizia con una soluzione di equazioni lineari. Ax = b A una matrice e x e b sono vettori. Axb rappresenta l'errore delle equazioni. L'equazione seguente rappresenta il quadrato dell'errore della precedente equazione. E(x) = (Ax-b)T(Ax-b) = xTATAx-2bTAx+bTb Per minimizzare l'errore quadratico E(x), calcolate la derivata della precedente funzione ed impostate il risultato a zero: E(x) = 0 2ATAx-2ATb = 0 ATAx = ATb x = (ATA)-1ATb Dal flusso dell'algoritmo si pu notare l'efficienza del processo di calcolo, dato che il processo non iterativo. Le applicazioni che richiedono efficienza possono usare questo metodo di calcolo. Il metodo LS calcola x minimizzando l'errore quadratico ed elaborando i dati che hanno rumore distribuito in modo gaussiano. Se il rumore non distribuito in modo gaussiano, per esempio se i dati contengono punti isolati, il metodo LS non adatto. Per elaborare dati contenenti rumore non distribuito in modo gaussiano si pu utilizzare un altro metodo, come il metodo LAR o biquadratico.
dove n il numero di campioni wi l'i-esimo elemento dell'array di pesi per i campioni f(xi) l'i-esimo elemento dell'array di valori y del modello fittato yi l'i-esimo elemento del set di dati (xi, yi) Il metodo LAR trova f(x) minimizzando lo scarto secondo la formula seguente:
METODO LAR
Il metodo LAR minimizza lo scarto secondo la formula seguente: Il metodo biquadratico trova f(x) usando un processo iterativo, come illustrato nel diagramma di flusso in figura 2 e calcola lo scarto usando la stessa formula del metodo LS. Il metodo biquadratico calcola i dati partendo dall'iterazione k. Poich i metodi LS, LAR e biquadratico calcolano f(x) in modo differente, si pu scegliere il metodo di curve fitting in
10
do LS con pesi variabili. Se il campione distante da f(x), viene impostato un peso relativamente pi basso dopo ogni iterazione, in modo che tale campione abbia una minore influenza negativa sul risultato del fitting. Pertanto, il metodo LAR adatto per serie di dati con punti isolati.
METODO BIQUADRATICO
Analogamente al metodo LAR, anche il metodo biquadratico utilizza l'iterazione per modificare i pesi dei campioni. Nella maggior parte dei casi, il metodo biquadratico meno sensibile ai punti isolati rispetto al metodo LAR.
Come si pu vedere dalla precedente tabella, il metodo LS ha l'efficienza pi elevata. La figura 3 illustra l'influenza dei punti isolati sui tre metodi.
I campioni lontani dalle curve fittate sono punti isolati. Nella figura precedente, si possono considerate i campioni (2, 17), (20, 29) e (21, 31) come punti isolati. I risultati indicano che i punti isolati hanno una maggiore influenza sul metodo LS. Nella scelta del metodo di fitting pi appropriato necessario tenere conto sia della qualit dei dati sia dell'efficienza di calcolo.
Quando si utilizza il VI General Polynomial Fit, necessario impostare prima di tutto l'ingresso Polynomial Order. Un elevato Polynomial Order non garantisce necessariamente un risultato di fitting migliore e pu provocare oscillazioni. Una polinomiale del decimo ordine o inferiore pu soddisfare la maggior parte delle applicazioni. Il Polynomial Order di default 2. Questo VI ha un ingresso Coefficient Constraint. Si pu impostare tale ingresso se si conoscono i valori esatti dei coefficienti polinomiali. Impostando questo ingresso, il VI calcola un risultato pi vicino al vero valore.
Se il set di dati contiene n punti e k coefficienti per i coefficienti a0, a1, , ak-1, allora H una matrice di osservazione n k. Pertanto, il numero di righe in H uguale al numero di punti, n. Il numero di colonne in H uguale al numero di coefficienti, k. Per ottenere i coefficienti, a0, a1, , ak-1, il VI General LS Linear Fit risolve la seguente equazione lineare: Ha=y dove a = [a0 a1 ak 1]T e y = [y0 y1 yn 1]T.
10
Dalla figura 5 si pu vedere che quando p uguale a 1.0, la vicinanza della curva fittata ai dati di osservazione massima. Quando p uguale a 0.0, la curva fittata ha la massima smoothness, ma la curva non intercetta alcun dato.
figura 7 illustra un set di dati prima e dopo l'applicazione del VI Remove Outliers.
Nella figura 7, il grafico a sinistra mostra il set di dati originale con l'esistenza di punti isolati. Il grafico a destra mostra invece i dati pre-elaborati dopo la rimozione dei punti isolati. Potete anche rimuovere i punti isolati che rientrano fra gli indici dell'array che specificate. Alcuni set di dati richiedono un grado di pre-elaborazione pi elevato. Un tool di pre-elaborazione a filtro mediano utile per rimuovere i punti isolati e smussare i dati.
POST-ELABORAZIONE
LabVIEW offre VI per valutare i risultati dei dati dopo avere eseguito un curve fitting. Tali VI possono determinare la precisione dei risultati del curve fitting e calcolare gli intervalli di confidenza e predizione in una serie di misure.
dove DOF il grado di libert. SSE e RMSE riflettono l'influenza di fattori casuali e mostrano la differenza fra il set di dati e il modello fittato. L'equazione seguente descrive l'R-quadro:
PRE-ELABORAZIONE
Il VI Remove Outliers pre-elabora il set di dati rimuovendo i punti che si trovano al di fuori di un certo range. Il VI elimina l'influenza dei punti isolati sulla funzione obiettivo. La
R-quadro una rappresentazione quantitativa del livello di fitting. Un valore elevato di R-quadro significa una corrispondenza migliore fra il modello di fitting e il set di dati. Poich R-quadro una rappresentazione frazionale di SSE e SST, il valore deve essere compreso fra 0 e 1. 0 R-quadro 1 Quando i campioni si adattano esattamente alla curva fittata, SSE uguale a 0 e R-quadro uguale a 1. Quando alcuni dei campioni di dati sono esterni alla curva fittata, SSE maggiore di 0 e R-quadro minore di 1. Poich R-quadro normalizzato, pi R-quadro vicino a 1, maggiore il livello di fitting e meno la curva dolce. La figura seguente mostra le curve fittate di un set di dati con differenti risultati di R-quadro.
correla fra tutti gli esperimenti, si pu utilizzare l'intervallo di confidenza per stimare l'incertezza dei parametri di fitting. Potete anche utilizzare l'intervallo di predizione per stimare l'incertezza dei valori dipendenti del set di dati. Supponiamo, per esempio, di avere il set di campioni (x0, y0), (x1, y1), , (xn-1, yn-1) per la funzione di fit lineare y = a0x + a1. Per ogni campione di dati, (x1, y1), la varianza dell'errore di misura, , specificata dal peso,
Si pu utilizzare la funzione in forma x = (ATA)-1ATb del metodo LS per fittare i dati secondo l'equazione seguente.
dove
a = [a0 a1]T
y = [y0 y1 yn-1]T Potete riscrivere la matrice di covarianza dei parametri, a0 e a1, come l'equazione seguente.
Dalla figura precedente si pu vedere che la curva fittata con R-quadro uguale a 0,99 fitta il set di dati pi da vicino ma meno dolce della curva fittata con R-quadro uguale a 0,97.
m il numero di parametri n il numero di campioni Nella precedente equazione, il numero di parametri, m, uguale a 2. L'i-esimo elemento diagonale di C, Cii, la varianza del parametro ai, . L'intervallo di confidenza stima l'incertezza dei parametri di fitting ad un certo livello di confidenza . Per esempio, un intervallo di confidenza del 95% significa che il vero
10
valore del parametro di fitting ha una probabilit del 95% di rientrare nell'intervallo di confidenza. L'intervallo di confidenza dell'i-esimo parametro di fitting :
modelli di curve fitting comuni, come i modelli di fit lineare, fit esponenziale, fit su picchi gaussiani, fit logaritmico e fit di potenza. Tali VI calcolano i limiti superiore ed inferiore dell'intervallo di confidenza o dell'intervallo di predizione secondo il livello di confidenza che impostate. La figura 9 mostra esempi del grafico dell'Intervallo di confidenza e del grafico dell'Intervallo di predizione, rispettivamente, per lo stesso set di dati. Dal grafico dell'Intervallo di confidenza, si pu vedere che l'intervallo di confidenza stretto. Un piccolo intervallo di confidenza indica una curva fittata vicina alla curva reale. Dal grafico dell'Intervallo di predizione, si pu concludere che ogni campione di dati nel successivo esperimento di misura avr una probabilit del 95% di rientrare nell'intervallo di predizione.
dove la funzione di distribuzione cumulativa inversa t di Student con nm gradi di libert alla probabilit e la dviazione standard del parametro ai uguale a . Potete anche stimare l'intervallo di confidenza di ciascun campione di dati ad un certo livello di confidenza . Per esempio, un intervallo di confidenza del 95% di un campione significa che il vero valore del campione ha una probabilit del 95% di rientrare nell'intervallo di confidenza. L'intervallo di confidenza dell'i-esimo campione di dati :
ESEMPI APPLICATIVI
dove diagi(A) denota l'i-esimo elemento diagonale della matrice A. Nella precedente formula, la matrice (JCJ)T rappresenta la matrice A. L'intervallo di predizione stima l'incertezza dei campioni nel successivo esperimento di misura ad un certo livello di confidenza . Per esempio, un intervallo di predizione del 95% significa che il campione di dati ha una probabilit del 95% di rientrare nell'intervallo di predizione nel successivo esperimento di misura. Poich l'intervallo di predizione riflette non solo l'incertezza del vero valore, ma anche l'incertezza della misura successiva, l'intervallo di predizione pi ampio dell'intervallo di confidenza. L'intervallo di predizione dell'i-esimo campione :
Compensazione dell'errore
Mano a mano che l'et degli strumenti di misura ed acquisizione dati aumenta, aumentano anche gli errori di misura che influiscono sulla precisione dei dati. Per assicurare risultati di misura accurati, potete utilizzare il metodo di curve fitting per trovare la funzione di errore per compensare gli errori dei dati. Per esempio, esaminiamo un esperimento in cui un termometro misura la temperatura fra 50C e 90C. Supponiamo che T1 sia la temperatura misurata, T2 sia la temperatura ambiente e Te sia l'errore di misura, dove Te T1 meno T2. Misurando diverse temperature entro il campo misurabile da 50C a 90C, si ottiene la tabella di dati nella pagina seguente. Si pu utilizzare il VI General Polynomial Fit per creare lo schema a blocchi illustrato nella figura 10 per trovare l'errore di misura compensato.
LabVIEW mette a disposizione dei VI per calcolare l'intervallo di confidenza e l'intervallo di predizione dei
Temperatura ambiente -43.1377 -39.3466 -34.2368 -29.0969 -24.1398 -19.2454 -14.0779 -9.10834 -4.08784
Temperatura misurata -42.9375 -39.25 -34.125 -29.0625 -24.125 -19.3125 -14.1875 -9.25 -4.25
Temperatura ambiente 0.769446 5.831063 10.84934 15.79473 20.79082 25.70361 30.74484 35.60317 40.57861
Temperatura misurata 0.5625 5.625 10.625 15.5625 20.5625 25.5 30.5625 35.4375 40.4375
Temperatura ambiente 45.68797 50.56738 55.58933 60.51409 65.35461 70.54241 75.40949 80.41012 85.26303
Temperatura misurata 45.5625 50.5 55.5625 60.5625 65.4375 70.6875 75.625 80.75 85.6875
zioni della baseline potete utilizzare il curve fitting per ottenere ed estrarre il trend del segnale dal segnale originale. Come si vede nella figura 12, si pu trovare la fluttuazione della baseline in un segnale ECG che misura la respirazione umana. Si pu ottenere il trend del segnale usando il VI General Polynomial Fit e quindi eseguire il detrend del segnale trovando e rimuovendo la fluttuazione della baseline dal segnale originale.
Il panello frontale nella figura 11 mostra i risultati dell'esperimento quando si usa il VI della figura 10.
Figura 11 - Uso del General Polynomial Fit VI per fittare la cur va di errore
La figura precedente mostra il set di dati con l'errore di misura originale, la curva fittata al set di dati e l'errore di misura compensato. Dopo avere definito innanzitutto la curva fittata al set di dati, il VI usa la curva fittata ai dati dell'errore di misura per compensare l'errore di misura originale. Si pu vedere dal grafico dell'errore compensato che usando il curve fitting si migliorano i risultati dello strumento di misura diminuendo l'errore di misura a circa un decimo del valore dell'errore originale.
Figura 12 - Uso del General Polynomial Fit VI per rimuovere la fluttuazione della baseline
10
Dai grafici precedenti si pu vedere che utilizzando il General Polynomial Fit si sopprime la fluttuazione della baseline. In questo esempio, l'uso del metodo di curve fitting per rimuovere la fluttuazione della baseline pi veloce e semplice dell'uso di altri metodi, come l'analisi wavelet.
estrae il bordo iniziale del bordo di un oggetto e utilizza il VI Nonlinear Curve Fit per fittare il bordo iniziale al bordo effettivo dell'oggetto.
Figura 14 - Uso del Nonlinear Cur ve Fit VI per fittare un bordo ellittico
Il grafico nella precedente figura mostra i risultati iterativi per calcolare il bordo fittato. Dopo diverse iterazioni, il VI estrae un bordo che vicino al bordo effettivo dell'oggetto.
Come si pu vedere dalla figura precedente, il bordo estratto non n regolare n completo a causa delle condizioni di illuminazione e di un'ostruzione da parte di un altro oggetto. Poich la forma del bordo ellittica, si pu migliorare la qualit del bordo usando le coordinate del bordo iniziale per fittare una funzione ellittica. Usando un processo iterativo, potete aggiornare il peso dei pixel del bordo al fine di minimizzare l'influenza dei pixel imprecisi nel bordo iniziale. La figura 14 mostra il pannello frontale di un VI che
Nella precedente immagine, si possono osservare le cinque bande dell'immagine multispettrale Landsat, con la banda 3 visualizzata come blu, la banda 4 come verde e la banda 5 come rosso. L'area dell'immagiFigura 15 - Immagine a falsi colori ne include tre tipi di tipici oggetti al suolo: acqua, piante e suolo. Gli oggetti che corrispondono al suolo includono componenti di architettura artificiale come edifici e ponti.
Figura 16 - Uso del General LS Linear Fit VI per scomporre un'immagine con pixel misti (a) Piante (b) Suolo e costruzioni ar tificiali (c) Acqua
rappresenta la funzione di errore in LabVIEW. Si pu riscrivere la funzione gaussiana modificata esponenzialmente originale come l'equazione seguente.
Si pu utilizzare il VI General LS Linear Fit per creare un VI di scomposizione dei pixel misti. La figura 16 mostra i risultati della scomposizione usando il VI General LS Linear Fit. Nelle immagini precedenti, le aree in nero indicano lo 0% di un certo oggetto d'interesse e le aree bianche indicano il 100% di un certo oggetto d'interesse. Per esempio, nell'immagine che rappresenta oggetti piante, le aree bianche indicano la presenza di oggetti piante. Nell'immagine che rappresenta oggetti acqua, la regione bianca a forma d'onda indica la the presenza di un fiume. Si pu confrontare la rappresentazione dell'acqua nella precedente figura con la figura 15. Dai risultati ottenuti, si pu vedere che il VI General LS Linear Fit scompone correttamente l'immagine multispettrale Landsat in tre oggetti al suolo. LabVIEW pu fittare questa equazione usando il VI Nonlinear Curve Fit. La figura 17 mostra un modello di gaussiana modificata esponenzialmente per dati cromatografici. Questo modello utilizza il VI Nonlinear Curve Fit VI e il VI Error Function per calcolare la curva di fit per un set di dati per cui si ottiene un fit ottimale con la funzione gaussiana modificata esponenzialmente.
dove
Utilizzando i VI appropriati, possibile creare un nuovo VI per fittare una curva su un set di dati la cui funzione non disponibile in LabVIEW.
CONCLUSIONE
y0 l'offset dall'asse y A l'ampiezza del set di dati xc il centro del set di dati w la laghezza della funzione t0 il fattore di modifica I VI di curve fitting in LabVIEW non possono fittare questa funzione direttamente, perch LabVIEW non riesce a calcolare direttamente integrali generalizzati. Tuttavia, l'integrale nella precedente equazione un normale integrale di probabilit, che una funzione di errore pu rappresentare secondo l'equazione seguente. Il curve fitting non solo valuta la relazione fra le variabili in un set di dati, ma elabora anche set di dati contenenti rumore, irregolarit, errori dovuti a dispositivi di test e misura imprecisi e cos via. LabVIEW mette a disposizione VI di curve fitting base e avanzati che utilizzano metodi di fitting differenti, come i metodi LS, LAR e biquadratico, per trovare la curva di fitting. Il modello e il metodo di fitting che si utilizzano dipendono dal set di dati che si desidera fittare. LabVIEW offre anche VI di pre-elaborazione per rimuovere i punti isolati da un set di dati, valutare laccuratezza del risultato di fitting e misurare l'intervallo di confidenza e l'intervallo di predizione dei dati fittati.
Note sullautore
Sam Shearman il product manager del software di analisi e signal processing in National Instruments
Da 10 anni aiutiamo con successo produttori ed integratori di sistemi con un unico scopo: supportarli a sviluppare efcacemente il loro business proponendo le migliori tecnologie presenti sul mercato, coadiuvate da servizi altamente specializzat Da 10 anni siamo il partner ideale per chi opera nel mondo della visione industriale e dellimaging scientico in generale.
ADVANCED TECHNOLOGIES S.p.A. Via Carducci, 35 | 20090 Trezzano S/N | Milano | Italy T +39 02 4455154 | F +39 02 4453103 www.adv-tech.it
readerservice.it n.21
D A L L A T E O R I A A L L A P R AT I C A
Il nuovo sistema di misura SC-LAB (LABboratorio Sicur Control) ormai diventato un punto di forza in Europa dal punto di vista della qualit dei risultati di prova, dei rappor ti di prova generati automaticamente e della facilit ed economicit di calibrazione
ellambito delle prove per laccertamento della sicurezza elettrica ai fini della certificazione internazionale, nel Laboratorio UL Italia era necessario creare un sistema di strumenti virtuali personalizzati interconnessi via Ethernet e accessibili via web come alternativa e miglioramento agli strumenti tradizionali attualmente in commercio. La sfida era adottare come standard questo nuovo approccio alle misure, oltre che in Europa, anche nei laboratori UL nel resto del mondo. Il sistema di condizionamento dei segnali sviluppato nel Laboratorio UL Italia 15 anni fa e migliorato nel corso degli
anni, unitamente a schede di acquisizione, DMM e switch basate su bus PXI, ha consentito lacquisizione e la misura di molteplici grandezze elettriche, meccaniche, termiche ed ottiche. La successiva analisi, elaborazione e visualizzazione tipica di LabVIEW ne ha definito uno standard (sia dal punto di vista grafico che di interfaccia con lutente) per i diversi strumenti di misura.
IL SISTEMA SC-LAB
Il nuovo sistema di misura, denominato SC-LAB (LABboratorio Sicur Control, ora divisione di UL), nato 15
D A L L A T E O R I A A L L A P R AT I C A
10
Figura 1
anni fa con lo scopo di migliorare lefficienza del Laboratorio, ormai diventato un punto di forza in Europa dal punto di vista della qualit dei risultati di prova, dei rapporti di prova generati automaticamente e della facilit ed economicit di calibrazione. Un sintetico elenco delle applicazioni pu essere il seguente: Three phase Wattmeter & Energy counter (range da 100mA a 50A, da 3Va 1kV) Temperatur Data Logger (96 canali) Hot Coil Resistance Meter (8 canali 20A) Programmable Timer Three phase Harmonics Analyzer Profile detector (microscopio con 1m di risoluzione) Tracking and Glow Wire Analyzer (con misura altezza fiamma) Oltre agli strumenti, fanno parte del sistema SC-LAB numerosi driver per strumenti campione, Report Editor, programmi e utility di vario genere. Il tutto contenuto in un armadio denominato Rack (figura 1). Tra le pi significative applicazioni che di seguito verranno descritte, le pi importanti dal punto di vista dei vantaggi ottenuti rispetto agli strumenti tradizionali sono il Three Phase Wattmeter & Energy Counter ad il Temperature Data Logger. Tra le prove di sicurezza elettrica, la misura della potenza (e/o della corrente) assorbita e delle temperature interne di un prodotto rappresentano le pi comuni e frequenti verifiche di laboratorio applicabili a praticamente tutte le categorie di prodotti elettrici. Per questo motivo, tali due strumenti sono stati i primi ad essere ideati e realizzati e quindi perfettamente adattati per limpiego in laboratori di certificazione.
va ed apparente) sulle singole fasi e sul sistema multifase, la frequenza, il fattore di potenza e lenergia consumata. Rispetto agli strumenti tradizionali i vantaggi sono molteplici. Primo fra tutti la semplicit duso: indipendentemente dal tipo di alimentazione dellapparecchio, monofase, bifase, trifase, con o senza neutro, la misura viene condotta semplicemente inserendo la spina nel modulo di potenza senza preoccuparsi di realizzare nessun ulteriore collegamento esterno. La schermata principale, che visualizza sia i dati numerici delle misure che le forme donda delle tensioni e delle correnti, fornisce una chiara situazione elettrica generale del prodotto in prova. La possibilit di salvare su file ogni misura e forma donda consente di registrare landamento nel tempo delle varie grandezze misurate. Le applicazioni sono innumerevoli: dalla misura della potenza e corrente assorbita da apparecchi frigoriferi, alla monitorizzazione di tensioni e frequenze in protezioni di interfaccia per il collegamento degli inverter alla rete di distribuzione pubblica dellenergia. Lo strumento include molteplici altre funzioni sicuramente non presenti in strumenti tradizionali quali: un sistema di controllo delle tensioni (trifase) che, mediante variac motorizzati, consente di impostare e mantenere in modo indipendente le tre tensioni di alimentazione la possibilit di acquisire ed analizzare, oltre alle tensioni e correnti, ulteriori 8 segnali analogici provenienti da trasduttori di vario tipo la misura e visualizzazione vettoriale della terna trifase delle tensioni e delle correnti, con la misura delle fasi di ciascun vettore ed il calcolo della corrente di neutro nei sistemi multifase sbilanciati
Figura 2
D A L L A T E O R I A A L L A P R AT I C A
la verifica della qualit della sorgente di alimentazione (tensione, frequenza e distorsione armonica totale) prevista dalla norma EN17025 la possibilit di interagire direttamente con i trasduttori interni di tensione e corrente per eseguire in modo semiautomatico una calibrazione contemporanea dei tre wattmetri
Figura 3
proprio su questa funzionalit che si basano molti test particolari per i quali necessaria la misura e lelaborazione di grandezze di varia natura (ad esempio elettriche e termiche) che difficilmente si trovano inserite in un unico strumento tradizionale. Una tipica applicazione la misura del consumo energetico di un forno domestico per il mercato Canadese. Sulla base dellandamento della temperatura di un cilindro di prova in alluminio posto allinterno del forno e dellandamento dellenergia consumata dal forno, la norma definisce un algoritmo di calcolo per la determinazione del consumo medio annuo del forno. La combinazione delle funzionalit del Three Phase Wattmeter & Energy Counter e del Temperature Data Logger permette di costruire un grafico dellandamento della temperatura del cilindro di alluminio in funzione dellenergia consumata. Non ultima, ma sicuramente importante per laboratori distribuiti (figura 3) in tutti i continenti, la possibilit di connessione remota con visione e controllo a distanza della misura in corso.
CONCLUSIONE
Nato per passione personale, aggiornato e migliorato grazie al contributo di tutti gli ingegneri che lhanno utilizzato, modificato nel tempo in accordo allevoluzione delle normative (sia di prodotto che di qualit), ma soprattutto tecnologicamente sempre al passo con i tempi grazie al supporto e consiglio di National Instruments, contiamo sulla fattiva ed usuale collaborazione da parte di tutti per le future sfide che SC-LAB dovr ancora affrontare.
Note sullautore
Dario Rivoltella, Sicur Control (Divisione di UL Italia)
SCUOLA DI LABVIEW
10
Questa lezione discute due differenti categorie di architetture di programmazione: a cicli singoli e multipli. Queste architetture sono note globalmente come schemi di progettazione. Le architetture a ciclo singolo includono schemi di progettazione di VI semplici, generali e di macchine a stati. Le architetture a cicli multipli includono schemi di progettazione di VI a cicli paralleli, Master/Slave e Producer/Consumer. La comprensione di quale sia lo schema di progettazione migliore la chiave per la realizzazione di VI efficienti in LabVIEW. Gli argomenti della lezione saranno descritti secondo la seguente sequenza: A. Architetture a ciclo singolo B. Parallelismo C. Architetture a pi cicli D. Temporizzazione di uno schema di progettazione
lutente decide di uscire dal programma o il programma si arresta per altri motivi come il completamento di un I/O. Chiusura - Questa sezione di solito si occupa di chiudere i file, di scrivere le informazioni di configurazione su disco o di ripristinare lI/O sullo stato di default. La figura 1 mostra questa architettura generale di VI.
Nella figura 1 il collegamento del cluster di errore controlla lordine di esecuzione delle tre sezioni. Il While Loop non viene eseguito finch il VI Start Up non ha finito lesecuzione e restituisce il cluster di errore. Di conseguenza, il VI Shut Down non pu essere eseguito finch il programma principale nel While Loop non ha finito e i dati del cluster di errore non lasciano il ciclo. La maggior parte dei cicli richiede una funzione Wait, specialmente se quel ciclo monitora gli ingressi dellutente sul pannello frontale. Senza la funzione Wait, il ciclo potrebbe rimanere in esecuzione continuativamente e utilizzare tutte le risorse di sistema del computer. La funzione Wait forza il ciclo ad essere eseguito in modalit asincrona anche se specificate 0 millisecondi come tempo di attesa. Se le operazioni allinterno del ciclo reagiscono agli ingressi dellutente, potreste incrementare il tempo di attesa ad un livello accettabile per i tempi di reazione. Unattesa di 100 - 200 ms usualmente buona perch la maggior parte degli utenti non pu rilevare quellentit di ritardo tra il click su un pulsante del pannello frontale e la conseguente esecuzione dellevento. Per applicazioni semplici, il ciclo dellapplicazione princi-
SCUOLA DI LABVIEW
pale pu essere abbastanza semplice e contenere codice che segue lo schema di progettazione di VI semplici. Quando avete interfacce utente complicate o eventi multipli, come ad esempio azioni dellutente, trigger sullI/O e cos via, questa sezione pu diventare pi complicata. Schema di progettazione a macchine a stati Lo schema di progettazione a macchine a stati una modifica di uno schema pi generale. Di solito ha una fase di startup ed una di shut down. Tuttavia la fase dellapplicazione principale consiste di una struttura Case inserita in un ciclo. Questa architettura vi consente di avviare codice differente ogni volta che il ciclo viene eseguito sulla base di alcune condizioni. Ogni condizione definisce uno stato della macchina, da cui il nome, macchina a stati. Utilizzate questo modello di progettazione per VI che sono facilmente divisibili in compiti pi semplici, come i VI che agiscono come interfaccia utente. Una macchina a stati in LabVIEW consiste di un While Loop, una struttura Case e un registro a scorrimento. Ogni stato della macchina a stati una condizione nella struttura Case. Inserite i VI e altro codice che volete eseguire nella condizione corretta. Un registro a scorrimento memorizza lo stato da eseguire fino alliterazione successiva del ciclo. Lo schema a blocchi di un VI a macchina a cinque stati mostrato nella figura 2. La figura 3 mostra i casi nascosti, o condizioni, della macchina a stati.
In questa architettura, progettate lelenco dei possibili eventi, o stati, e quindi mappateli ognuno su una condizione. Per il VI dello schema a blocchi in figura 2, gli stati possibili sono Startup, Idle, Event 1, Event 2 e Shutdown. Questi stati sono memorizzati in una costante di tipo enumerated. Ogni stato ha la sua condizione nella struttura Case. Mentre una condizione in esecuzione, lo stato successivo viene determinato sulla base del risultato corrente. Lo stato successivo viene memorizzato nel registro a scorrimento. In caso di errore in uno degli stati, viene richiamata la condizione shutdown. Il vantaggio dellarchitettura con macchine a stati che lo schema a blocchi pu diventare molto pi piccolo, rendendone pi facile la lettura e la correzione. Un altro vantaggio dellarchitettura con macchine a stati che ogni condizione determina lo stato successivo, diversamente dalle strutture Sequence che non possono saltare un frame. Uno svantaggio dellarchitettura con macchine a stati che con questo approccio potete perdere degli eventi. Se due eventi si presentano nello stesso istante, questo modello gestisce il primo e perde il secondo. Ci pu condurre ad errori che sono difficili da correggere perch possono presentarsi solo occasionalmente. Versioni pi complesse dei VI con architettura con macchine a stati contengono codice aggiuntivo che realizza una coda di eventi con lo scopo di non perderli.
B. PARALLELISMO
Il parallelismo un modo di eseguire compiti in parallelo nello stesso istante. Per discutere il parallelismo, considerate lesempio della creazione e visualizzazione di due sinusoidi a differenti frequenze. Inserite una sinusoide in un ciclo e la seconda in un ciclo differente. Una sfida nella programmazione di compiti in parallelo quella di passare dati tra pi cicli senza creare una dipendenza tra i dati. Per esempio, se passate i dati utilizzando un collegamento, i cicli non sono pi in parallelo. Nellesempio di pi sinusoidi, potete voler condividere un singolo pulsante di stop tra i
Fig.come 4 - Pannello frontale dei cicli in cicli, mostrato nella figura 4.parallelo
Esaminate che cosa accade quando provate a condividere dati tra cicli in parallelo con un collegamento.
SCUOLA DI LABVIEW
10
Metodo 1 (sbagliato) Inserite il terminale Loop Control al di fuori di entrambi i cicli e collegatelo a ciascun terminale condizionale, come mostrato in figura 5. Lo stato del controllo booleano un dato in ingresso per entrambi i cicli, quindi il terminale Loop Control viene letto solo una volta, prima dellesecuzione dei While Loop. Se viene passato TRUE ai cicli, i While Loop rimarranno in esecuzione indefinitamente. Disattivando il selettore non si arresta il VI perch il selettore non viene letto durante literazione di ciascun ciclo.
Soluzione Se potete leggere il pulsante di stop da un file, non avrete pi bisogno di avere una dipendenza di flusso dei dati tra i cicli, dato che ogni ciclo pu accedere al file indipendentemente. Tuttavia, la lettura e scrittura di file pu richiedere tempo, parlando sempre rispetto ai tempi propri del processore. Un altro modo di svolgere questo compito di trovare il punto in memoria in cui il pulsante di stop memorizzato e leggere quella locazione di memoria direttamente.
C. ARCHITETTURE A PI CICLI
Modello di progettazione a cicli paralleli Alcune applicazioni richiedono che il programma risponda ed avvii diversi compiti contemporaneamente. Un modo di progettare la sezione principale di questa applicazione di assegnare un ciclo differente per ogni compito. Per esempio, potreste avere un ciclo differente per ogni pulsante sul pannello frontale e per ogni altro genere di compito, come una selezione di menu, sincronizzazione di I/O e cos via. La figura 7 mostra questo modello di progettazione a cicli paralleli.
Fig. 5 - Esempio del Metodo 1 con cicli in parallelo
Metodo 2 (sbagliato) Spostate il terminale Loop Control allinterno del Loop 1 affinch venga letto ad ogni iterazione del Loop 1, come mostrato nello schema a blocchi di figura 6. Sebbene il Loop 1 termini correttamente, il Loop 2 non va in esecuzione finch non riceve tutti i suoi dati dingresso. Il Loop 1 non passa dati al di fuori del ciclo fino a quando si arresta, quindi il Loop 2 deve aspettare il valore finale di Loop Control, disponibile solo quando Loop 1 termina. Quindi i cicli non vengono eseguiti in parallelo. Inoltre, il Loop 2 viene eseguito solo per uniterazione perch il suo terminale condizionale riceve un valore False dal selettore Loop Control nel Loop 1.
Questa struttura semplice e adatta per VI a menu semplici, in cui vi aspettate che un utente scelga tra uno di diversi pulsanti che svolgono azioni differenti. Il modello di progettazione a cicli paralleli vi consente di gestire pi compiti, indipendenti e contemporanei. In questo modello di progettazione, la risposta ad unazione non impedisce al VI di rispondere ad unaltra azione. Per esempio, se un utente clicca su un pulsante che visualizza una finestra di dialogo, i cicli paralleli possono continuare a rispondere a compiti di I/O. Tuttavia, con il modello di progettazione a cicli paralleli dovete coordinare e far comunicare cicli differenti. Il pulsante di Stop per il secondo ciclo di figura 7 una variabile locale. Non potete utilizzare collegamenti per passare dati tra i cicli perch cos facendo si impedisce ai cicli
SCUOLA DI LABVIEW
lesecuzione in parallelo. Invece dovete utilizzare tecniche specifiche per passare informazioni tra i processi. Modello di progettazione Master/Slave Il modello di progettazione Master/Slave consiste di pi cicli in parallelo. Ogni ciclo pu eseguire compiti a differenti velocit. Un ciclo agisce come master e gli altri cicli come slave. Il ciclo master controlla tutti i cicli slave e comunica con loro utilizzando tecniche di trasferimento dati, come mostrato in figura 8.
Utilizzate il modello di progettazione Master/Slave quando avete bisogno che un VI risponda ai controlli dellinterfaccia utente mentre contemporaneamente raccoglie dati. Per esempio, volete costruire un VI che misuri e memorizzi una tensione variabile lentamente una volta ogni cinque secondi. Il VI acquisisce una forma donda da una linea di trasmissione e la visualizza su un grafico ogni 100 ms. Il VI fornisce anche uninterfaccia utente che consente allutente di cambiare i parametri per ogni acquisizione. Il modello di progettazione Master/Slave si adatta bene a questa applicazione di acquisizione. Il ciclo master contiene linterfaccia utente; lacquisizione di tensione avviene in un ciclo slave e la gestione della parte grafica avviene in un altro ciclo slave. Utilizzando un approccio Master/Slave per questo VI, dovreste mettere i processi di acquisizione in due While Loop separati, entrambi guidati da un ciclo master che riceve gli ingressi dai controlli dellinterfaccia utente. Questo garantisce che i processi di acquisizione separati non si influenzino lun laltro e che ogni ritardo causato dallinterfaccia utente, come la visualizzazione di una finestra di dialogo, non ritardi una qualsiasi iterazione dei processi di acquisizione. Anche i VI che includono un controllo beneficiano delluso di modelli di progettazione Master/Slave. Considerate un VI in cui un utente controlla un braccio robotizzato a moto libero uilizzando i pulsanti su un pannello frontale. Questo tipo di VI richiede un controllo efficiente, accura-
to e reattivo a causa dei danni fisici che possono essere causati al braccio o allambiente circostante in caso di controllo gestito male. Per esempio, se lutente istruisce il braccio affinch si arresti nel suo moto verso il basso, ma il programma occupato con il controllo del perno del braccio, il braccio robotizzato pu collidere con la piattaforma del supporto. Applicate il modello di progettazione Master/Slave allapplicazione per evitare questi problemi. In questo caso il ciclo master gestisce linterfaccia utente e ogni sezione controllabile del braccio robotizzato ha il proprio ciclo slave. Siccome ogni sezione controllabile del braccio ha il proprio ciclo e la sua parte di tempo di elaborazione, linterfaccia utente ha un controllo pi reattivo del braccio robotizzato. Con un modello di progettazione Master/Slave, importante che i due While Loop non scrivano sugli stessi dati condivisi. Assicuratevi che non pi di un While Loop possa scrivere su una data porzione di dati condivisi. Lo slave non deve impiegare troppo nel rispondere al master. Se lo slave sta elaborando un segnale proveniente dal master e il master invia pi di un messaggio allo slave, lo slave riceve solo lultimo messaggio. Questo uso dellarchitettura Master/Slave potrebbe portare ad una perdita di dati. Utilizzate unarchitettura Master/Slave solo se siete certi che ogni task dello slave impieghi meno tempo del ciclo del master. Modello di progettazione Producer/Consumer Il modello di progettazione Producer/Consumer si basa sul modello Master/Slave e migliora lo scambio dati tra pi cicli in esecuzione a differenti velocit. Simile al modello Master/Slave, il modello di progettazione Producer/Consumer separa compiti che producono e usano i dati a differenti velocit. I cicli in parallelo nel modello di progettazione Producer/Consumer sono separati in due categorie: quelli che producono i dati e quelli che usano i dati prodotti. Le code di dati comunicano i dati tra i cicli. Le code di dati bufferizzano anche i dati tra il ciclo Producer e quello Consumer. Suggerimento Un buffer un dispositivo della memoria che memorizza dati temporanei tra i due dispositivi, o in questo caso, tra pi cicli. Utilizzate il modello di progettazione Producer/Consumer quando dovete acquisire pi insiemi di dati che devono
SCUOLA DI LABVIEW
10
essere processati in ordine. Supponete di voler realizzare un VI che accetta dati mentre sta processando gli insiemi di dati nellordine in cui sono stati ricevuti. Il modello di progettazione Producer/Consumer ideale per questo tipo di VI perch la formazione delle code di dati avviene molto pi rapidamente di quanto i dati possano essere processati (usati). Potreste mettere il Producer e il Consumer nello stesso ciclo per questa applicazione, ma la coda di elaborazione potrebbe non aggiungere ulteriori dati fino a quando la prima parte dei dati non stata completamente elaborata. Lapproccio Producer/Consumer per questo VI mette in coda i dati nel ciclo Producer e processa i dati nel ciclo Consumer come mostrato in figura 9.
Questo modello di progettazione consente al ciclo Consumer di processare i dati alla sua andatura, mentre il ciclo Producer continua a mettere in coda dati aggiuntivi. Potete anche utilizzare questo modello di progettazione per creare un VI che analizza la comunicazione di rete. Questo tipo di VI richiede due processi che funzionano contemporaneamente a differenti velocit. Il primo processo interroga costantemente la linea della rete e recupera pacchetti. Il secondo processo analizza i pacchetti recuperati dal primo processo. In questo esempio, il primo processo agisce come Producer perch fornisce dati al secondo processo, che agisce come Consumer. Il modello di progettazione Producer/Consumer unarchitettura efficiente per questo VI. I cicli paralleli Producer e Consumer gestiscono il recupero e lanalisi dei dati off line e la comunicazione in coda tra i cicli consente la bufferizzazione di pacchetti di rete recuperati. La bufferizzazione pu diventare importante quando la comunicazione con la rete occupata. Con la bufferizzazione i pacchetti possono essere recuperati e comunicati pi velocemente di quanto possano essere analizzati.
SCUOLA DI LABVIEW
In figura 11 trovate un esempio di temporizzazione a controllo software per monitorare lo scorrere del tempo fino allacquisizione del gruppo successivo di dati da parte del VI. Osservate luso del VI Express Elapsed Time per mantenere traccia del clock.
Osservate che il ciclo slave non contiene alcuna forma di temporizzazione. Luso delle funzioni di sincronizzazione, come Queues e Notifiers, per passare messaggi fornisce una forma intrinseca di temporizzazione nel ciclo slave. Il ciclo slave attende che la funzione Notifier riceva un messaggio. Dopo che Notifier ha ricevuto il messaggio, lo slave esegue le operazioni sul messaggio. Ci crea uno schema a blocchi efficiente che non spreca cicli di processore nel polling di messaggi. Questo un esempio di temporizzazione mediante lattesa di un evento. Quando implementate modelli di progettazione in cui la temporizzazione basata sul verificarsi di eventi, non dovete determinare la corretta frequenza di temporizzazione perch lesecuzione del modello di progettazione avviene solo in caso di evento. In altre parole, il modello di progettazione entra in esecuzione solo quando riceve un evento. Temporizzazione a controllo software Molte applicazioni che create devono eseguire unoperazione per un determinato intervallo di tempo. Considerate limplementazione di un modello di progettazione con macchine a stati per un sistema di acquisizione della temperatura. Se le specifiche richiedono che il sistema acquisisca temperature per 5 minuti, potreste rimanere nello stato di acquisizione fino a quando sono passati i 5 minuti. Tuttavia, durante quel tempo non potete processare una qualsiasi azione dellinterfaccia utente, come larresto del VI. Per processare queste azioni dellinterfaccia utente, dovete implementare la temporizzazione affinch il VI continui lesecuzione per il tempo specificato. Limplementazione di questa temporizzazione include il mantenimento dellesecuzione dellapplicazione mentre monitora un clock in tempo reale.
Se utilizzate la funzione Wait (ms) o Wait Until next ms Multiple per effettuare la temporizzazione software, la funzione di attesa deve finire prima che la funzione che state temporizzando possa essere eseguita. Queste funzioni non sono il metodo preferito per limplementazione della temporizzazione a controllo software, specialmente per VI in cui il sistema deve continuamente stare in esecuzione. Un buon modello da utilizzare per la temporizzazione di far ciclare il tempo corrente attraverso il VI, come mostrato in figura 12.
La funzione Get Date/Time In Seconds, collegata al terminale sinistro del registro a scorrimento, inizializza il registro a scorrimento con il tempo corrente del sistema. Ogni stato utilizza unaltra funzione Get Date/Time In Seconds e confronta il tempo corrente con quello iniziale. Se la differenza tra questi due tempi superiore o uguale al tempo di attesa, lo stato completa lesecuzione e il resto dellapplicazione viene eseguita. Utilizzate sempre la funzione Get Date/Time In Seconds invece della funzione Tick Count per questo tipo di confronto perch il valore della funzione Tick Count pu ritornare a 0 durante lesecuzione.
SCUOLA DI LABVIEW
10
PIANIFICAZIONE
A cura di Matteo Foini
seguano tali linee guida. Qui sotto descriviamo alcune raccomandazioni che potete utilizzare per creare le vostre linee guida di stile. Convenzioni sui nomi Quando sviluppate dei VI, dovete fare attenzione a come denominate tali VI. Per esempio, se utilizzate nomi come Parser.vi, Analyze Waveform.vi, Handle Errors.vi o Get Data.vi, quasi certo che un nome come questo corrisponder a quello di un VI in dotazione con LabVIEW. Pertanto, importante utilizzare nomi di VI che siano descrittivi e unici. Un metodo comune quello di aggiungere un prefisso unico all'inizio del nome di ogni VI. Una raccomandazione quella di creare un acronimo per il progetto ed utilizzare l'acronimo come prefisso per i vostri VI. Per esempio: VI di livello superiore: un acronimo di 2 o 3 lettere, tutte maiuscole, pi uno spazio, quindi il nome del VI. Per esempio, SML Main.vi, SVT Main.vi, OAT Main.vi. SubVI: un acronimo di 2 o 3 lettere, tutte minuscole, pi una sottolineatura, quindi il nome del subVI. Per esempio, sml_test.vi, svt_process.vi, oat_frequency_calculate.vi. Organizzazione dei file Organizzate i VI nel file system in modo da riflettere la natura gerarchica del software. Rendete direttamente accessibili i VI di livello superiore. Mettete i subVI in subdirectory e raggruppateli in modo da riflettere eventuali componenti modulari che avete progettato, come driver per strumentazione, utility di configurazione e driver di I/O. Limitate il numero e i livelli di directory che utilizzate in un progetto. Per ogni particolare VI, LabVIEW salva ciascun subVI come percorso relativo dal VI principale. Quando aprite un VI, LabVIEW utilizza prima di tutto questi percorsi relativi per localizzare i subVI. Se i VI non sono nella posizione prevista, LabVIEW cerca i VI nelle posizioni elencate nell'impostazione VI Search Paths. Per configurare i percorsi di ricerca dei VI, selezionate ToolsOptions e selezionate Paths nell'elenco Category. Se LabVIEW non in grado di trovare il VI nella posizione prevista o in uno dei percorsi di ricerca, avverte l'utente di
SCUOLA DI LABVIEW
localizzare il VI stesso. Se i VI non sono stati trovati nei percorsi di ricerca previsti, LabVIEW vi notifica i cambiamenti rilevati mettendo un asterico vicino al nome del VI nella barra titolo della finestra.
LabVIEW vi notifica se i VI non ono stati trovati nei percorsi elativi previsti Se il VI punta alla posizione bagliata, potete sostituire manualmente i VI con il VI Hierarchy window
Fig 1
Fig 2
Se salvate il VI, vengono salvati anche i percorsi dei file relativi. Ogni volta che salvate un VI, vengono salvati anche i percorsi relativi. Se aprite un VI e utilizzate FileSave As per salvare una copia in una nuova directory, sono salvati anche i percorsi agli stessi subVI relativi alla nuova posizione. Ricordate che, dopo avere utilizzato FileSave As, la versione del VI che state visualizzando in LabVIEW la nuova copia che avete appena creato. LabVIEW salva gli eventuali cambiamenti successivi nella nuova copia. Se in seguito doveste aprire ancora la copia, verrebbero cercati i percorsi relativi prima di cercare i subVI nella sua directory. E' per questo che i VI qualche volta puntano a copie dei subVI nel posto sbagliato. Potete creare una copia di un'applicazione indipendente dalle altre versioni nei modi seguenti. Nel Project Explorer, cliccate con il tasto destro su Build Specifications e selezionate NewSource Distribution per creare una distribuzione di sviluppo in una nuova posizione. Usate un'utility di trasferimento file come Windows Explorer, File Manager o il Library Manager di LabVIEW per copiare i file senza aprirli in LabVIEW. Se avete gi una versione della vostra applicazione che punta alla posizione sbagliata, potete sostituire manualmente i VI
maldiretti con le copie che desiderate. Selezionate ViewVI Hierarchy, quindi selezionate ViewFull VI Path in Label per sostituire manualmente i VI. Se l'errore di direzione frequente, potete scegliere di correggere il problema spostando l'intera copia dell'applicazione in una nuova posizione utilizzando un'utility di trasferimento file come Windows Explorer. In questo modo, i percorsi relativi non puntano pi ai VI nella vecchia directory e LabVIEW cerca i subVI nella stessa directory del VI che avete aperto. Ricordate che dovete salvare nuovamente il VI per mantenere i cambiamenti. Percorsi simbolici Un percorso simbolico funziona come una variabile che si espande in un nome di percorso completo. Usate un percorso simbolico per un percorso che potrebbe cambiare, per esempio, a causa del luogo di installazione di LabVIEW. I percorsi simbolici sono chiamati anche percorsi relativi. Potete specificare un percorso simbolico nelle sezioni Default Data Directory e VI Search Path della pagina Paths dellarea di dialogo Options o nel campo Help Paths sulla pagina Documentation Properties. LabVIEW converte un percorso simbolico in un percorso assoluto in fase di runtime. Il seguente elenco definisce ogni percorso simbolico. <osdatadir> - Fa riferimento al percorso alla directory di default sul sistema operativo. Utilizzate questo percorso simbolico quando impostate il VI Search Path sulla pagina Documentation Properties. <topvi> - Fa riferimento alla directory che contiene il VI di livello superiore che LabVIEW sta aprendo. Questo percorso simbolico disponibile solo quando impostate il VI Search Path sulla pagina Paths. <foundvi> - Fa riferimento ad un elenco di tutte le directory dove avete in precedenza situato un subVI. Durante una ricerca, LabVIEW aggiunge a tale elenco tutte le directory nelle quali LabVIEW trova un subVI. <foundvi> vi aiuta a localizzare una directory di VI che stata spostata o rinominata. Quando aprite un VI che chiama un altro VI che stato spostato, dovete trovare quella directory una sola volta, quindi LabVIEW aggiunge questo percorso all'elenco delle directory. Questo percorso simbolico disponibile solo quando si imposta il VI Search Path sulla pagina Paths. <vilib> - Fa riferimento alla directory vi.lib nella directory <labview>. Utilizzate questo percorso simbolico quando impostate il VI Search Path sulla pagina Paths. <userlib> - Fa riferimento alla directory user.lib nella directory <labview>. Utilizzate questo percorso simbolico quando
SCUOLA DI LABVIEW
10
impostate il VI Search Path sulla pagina Paths o l'Help path sulla pagina Documentation Properties. Per utilizzare questo percorso simbolico, immettete <userlib>:\ quindi il nome del file o il percorso e il nome del file verso il file di help. <instrlib> - Fa riferimento alla directory instr.lib nella directory <labview>. Utilizzate questo percorso simbolico quando impostate il VI Search Path sulla pagina Paths o l'Help path sulla pagina Documentation Properties. Per utilizzare questo percorso simbolico, immettete <instrlib>:\ quindi il nome del file o il percorso e il nome del file verso il file di help. <helpdir> - Fa riferimento alla directory di help nella directory <labview>. Utilizzate questo percorso simbolico quando impostate l'Help path sulla pagina Documentation Properties. Per utilizzare questo percorso simbolico, immettete <helpdir>:\ quindi il nome del file o il percorso e il nome del file verso il file di help. Esempio:
Object. Il testo usa il font Dialog. Le aree di dialogo che richiedono impostazioni hanno pulsanti OK, Cancel e Help Le aree di dialogo che visualizzano informazioni hanno pulsanti Cancel e Help Lo scorrimento sullo schema a blocchi limitato a una direzione Create un elenco di controllo per riesaminare l'interfaccia utente. Ai punti precedenti potete aggiungere i seguenti elementi all'elenco di controllo del vostro progetto. I pulsanti che lanciano un'altra area di dialogo dove l'utente continua l'inserimento di informazioni per il suo task corrente dovrebbero terminare con .... Scrivete con lettere maiuscole tutte le parole, inclusi gli aggettivi, per intestazioni, titoli, pulsanti e anelli di opzione. Scrivete con lettere maiuscole solo la prima lettera di etichette, didascalie e punti di elenchi. Se possibile utilizzate controlli System. Consentite il Cancel cliccando la X nella barra del titolo. I controlli che sono fuori schermo devono essere impostati a Skip this control when tabbing. I pulsanti OK, Cancel e Help sono in basso a destra e allineati. Le dimensioni dei pulsanti sono 75 pixel (larghezza) per 23 pixel (altezza), separati di 6 pixel. Le dimensioni della finestra non devono superare 800 x 600. L'interfaccia utente del VI viene visualizzata correttamente in Linux e Macintosh OS X. Stile e standard delle aree di dialogo Stabilire standard per le aree di dialogo assicura che il prodotto che sviluppate abbia un 'look and feel' coerente. Considerate i suggerimenti seguenti: Lo sfondo del pannello utilizza il colore SystemPanel and Object. I controlli sono controlli System quando appropriato. Le decorazioni System raggruppano componenti simili o correlati. Le etichette poste sopra le decorazioni System usano un colore di primo piano trasparente ed un colore di sfondo System Window. Le aree di testo usano un colore di primo piano System Window Text ed un colore di sfondo System Window. I bordi delle aree di dialogo dovrebbero avere una larghezza di sei pixel. I pulsanti delle aree di dialogo dovrebbero essere distanziati regolarmente, lasciando uno spazio di sei pixel fra loro. I pulsanti delle aree di dialogo dovrebbero avere una larghezza di 75 pixel ed un'altezza di 23.
Alcune funzioni possono accettare percorsi simbolici, come le funzioni Online Help in LabVIEW. Notate che il percorso simbolico <helpdir> lancia da programma il sistema di help online, come illustrato sopra. Stile coerente Molte applicazioni contengono aree di dialogo e interfacce utente. Implementate standard e coerenza per lo sviluppo di aree di dialogo, interfacce utente e schemi a blocchi. Considerate le linee guida di stile come guida per le vostre esigenze di sviluppo. Create un elenco di controllo per riesaminare lo stile Esempio Verificare che il tasto <Enter> sia assegnato ad un pulsante intuitivo. Verificare l'ordine di tabulazione. L'ordine di tabulazione deve andare dall'alto al basso e da sinistra a destra. Il colore di sfondo della finestra SystemPanel and
La mostra
In uno spazio specifico sar allestita unesposizione a cura delle aziende partecipanti, in cui sar possibile toccare con mano lattuale offerta commerciale.
Il convegno I contenuti
VforM - Vision for Manufacturing la quarta mostra convegno dedicata alla tecnologia della visione artificiale. Organizzato con il contributo delle riviste SdA-Soluzioni di Assemblaggio, Automazione Oggi e Automazione e Strumentazione. Levento Vision for Manufacturing nasce in collaborazione con IMVG, Italian Machine Vision Group e vede il supporto di ASSOAUTOMAZIONE Associazione Italiana Automazione e Misura, appartenente alla Federazione ANIE (Confindustria), di AIdA-Associazione Italiana di Assemblaggio, di SIRI-Associazione Italiana di Robotica e Automazione, del Polo della Robotica di Genova e con il patrocinio di EMVA - European Machine Vision Association. VforM si rivolge a progettisti, system integrator, responsabili e tecnici della produzione che necessitano di risolvere problematiche in ambito manifatturiero legate a: ispezione e controllo della qualit, guida robot, rilevamento presenza, posizione e orientamento, controllo dimensionale, identificazione e OCR ecc.
Il programma, lagenda e i titoli dei seminari saranno aggiornati, man mano che verranno confermati, sul sito www.ilb2b.it/vm
Nel corso della giornata si susseguiranno seminari tecnici tenuti dalle aziende espos della durata di 30 minuti ciascuno.
Per aderire
on line allindirizzo www.ilb2b.it/vm e via fax compilando il coupon allegato e inviandolo allo 02.36.6092.515 La partecipazione ai seminari e alla mostra gratuita, cos come la documentazione e il buffet.
Per informazioni
Tel. 02.36.6092.511 Fax. 02.36.6092.515 Email: vm@fieramilanoeditore.it Web: www.ilb2b.it/vm
Come arrivare
In auto: Dalle autostrade seguire le indicazioni per la tangenziale Ovest, uscita Vigentina (zona Milano Sud) Quindi seguire le indicazioni per Milano Centro; percorsi circa 5 Km l'albergo sulla sinistra.
IN COLLABORAZIONE CON:
ORGANIZZATO DA:
Con i mezzi pubblici Da Famagosta (Metropolitana linea 2 ve autobus 95 in direzione Rogoredo, 4a fermata Via Lampedusa. Autobus 65 (capolinea Piazza S. Babila/Corso Europ fino a Piazza Agrippa (capolinea). Autob 79 (capolinea P.ta Lodovica) fermata Vi Bazzi, incrocio Via G. da Cermenate.
11 GIUGNO 2009
prov tel
cap fax
Consenso ai sensi dellart. 23 del D.Lgs n. 196 del 30 giugno 2003. Letta la nota informativa riportata su questa rivista, esprimi il tuo consenso al trattamento, alla comunicazione dei tuoi dati personali ed ai correlati trattamenti ai soggetti che svolgono le attivit indicate nella informativa stessa. In mancanza del tuo consenso la registrazione non potr essere eseguita. ACCETTO NON ACCETTO Esprimi/nega il tuo consenso alla comunicazione dei dati personali ed ai correlati trattamenti ad aziende terze che ne facciano richiesta ai fini pubblicitari e di marketing. ACCETTO NON ACCETTO
D A L L A C A RTA A L W E B
10
HTTP://WWW
Quando le nostre pagine non bastano, l'enorme 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 c asi, tuttavia, sul web sono disponibili ar ticoli esaustivi o altri documenti, a cui rimandiamo i lettori interessati.
Avete mai desiderato che il vostro VI vi inviasse una email sul vostro account Gmail quando terminato? Questo esempio di codice fa proprio questo. Il VI utilizza l'SMTP per collegarsi a Gmail e inviare una email. LabVIEW non interagisce ancora con server email che richiedono l'autenticazione, ma la Classe System.SmtpClient interagisce con account email aperti. Link alla pagina: ni.com/italian infocode: itj2e3
D A L L A C A RTA A L W E B
10
Vi presentiamo una selezione di argomenti di discussione sul Forum di ILVG.it
Toolbar personalizzate
Inviato: Ven Mar 27, 2009 1:58 pm Ciao a tutti, qualcuno sa se possibile creare e visualizzare a runtime delle toolbars personalizzate in LV 8.6? grazie a tutti. Ciao Ricky, per creare una tool bar personalizzata puoi usare banalmente nel Front Panel un container di tipo Horizontal Splitter Bar. In questo modo dividi il Front Panel in due sezioni, una in cui c' la tool bar e un'altra in cui hai l'interfaccia grafica. Nello spazio della tool bar puoi ad esempio inserire dei pulsanti customizzati con delle immagini significative ed associare alla pressione del tasto una determinata azione del tuo codice mediante l'uso di una struttura ad eventi. Ryan_82 Se pero' per toolbar intendi qualcosa che ti permetta di creare oggetti LabVIEW (controlli e indicatori) runtime allora no, a livello ufficiale non possibile creare ed eliminare oggetti in runtime...ma ciao! gepponline Grazie ad entrambi, va benissimo la soluzione esposta da Ryan_82. Ho un altro problema... copiando delle bitmap direttamente sui pulsanti della toolbar che ho creato, queste impediscono il normale click quando giustamente l'utente clicca sulla regione della stessa bitmap. come faccio ad avviare il problema? Ricky Tasto destro sul controllo e su advanced selezioni "Customize...". Da li puoi mettere le immagini sul controllo facendole diventare parte del controllo. Se invece metti semplicemente delle immagini sopra al controllo, diventano un oggetto in primo piano e quindi fanno passare il controllo al di sotto impedendone la pressione. gepponline Ricky
TexWiller
EVENTI
10
SERVIZI HARDWARE
NATIONAL INSTRUMENTS:
SEMPRE PI INDISPENSABILI
Ezio Avalli
rmai trent'anni fa Ken Olsen, il fondatore di Digital Equipment Corporation, afferm: "Non vedo perch una persona debba tenere un computer a casa". Trent'anni dopo tale esclamazione i personal computer rivestono un ruolo di fondamentale importanza nelle nostre vite ed difficile immaginare come, nel passato, siamo riusciti a vivere senza. Lesperienza insegna: spesso ci che sembra superfluo nellimmediato pu dimostrarsi indispensabile in futuro. National Instruments immette sul mercato prodotti di alta qualit nei settori di test, misura e automazione. Questi ultimi sono sottoposti a rigorosi test ed ispezioni prima di essere commercializzati. I prodotti possono per essere ricalibrati o riparati anche in seguito. I Servizi Hardware di National Instruments sono stati pensati per proteggere gli investimenti dei propri clienti, risparmiando o predeterminando gli eventuali costi e fermo macchina. In particolar modo, quest'ultimo punto gioca un ruolo chiave per molte aziende. Il fermo macchina durante le prove di fine linea, per esempio, potrebbe arrecare un danno all'azienda ben superiore ai costi reali di riparazione dei prodotti acquistati. Dallesperienza di trent'anni di attivit e continuo confronto con le necessit lavorative dei propri clienti, NI offre la possibilit di prevedere ed evitare costi imprevisti causati da fermo macchina. Contratti di manutenzione I contratti di manutenzione hardware garantiscono il minor tempo possibile di fermo macchina a seguito di un guasto o durante le fasi di ricalibrazione dei prodotti. La soluzione In-House del contratto garantisce la spedizione del prodotto sostitutivo in tempi definiti, entro le 24 ore dal giorno lavorativo successivo alle prove con il nostro supporto tecnico ed alla comunicazione via fax da parte del cliente. La soluzione On-Site prevede che un tecnico di NI si rechi presso il cliente per la diagnosi, la sostituzione del prodotto guasto ed il test del sistema. Calibrazione Come ogni strumento di misura, alcune apparecchiature di NI richiedono la calibrazione periodica rispetto alle tabelle specifiche di accuratezza del prodotto. La calibrazione garantisce la ripetibilit e laccuratezza delle misure effettuate nel ciclo vita del sistema. La calibrazione annuale spesso un servizio
necessario al rispetto di normative e/o procedure della qualit interne dellazienda. Estensione di garanzia Se non avete problemi di fermo macchina, lestensione di garanzia vi permette di evitare eventuali costi di riparazione fuori garanzia. Se il ciclo di vita del sistema o del progetto lo richiede, per alcune linee di prodotto puoi valutare lestensione di garanzia per pi anni. Riparazioni standard Se il prodotto fuori garanzia, il costo della riparazione pari al 35% del prezzo di listino attuale del prodotto. Mediamente, la riparazione potrebbe richiedere fino a 15 giorni lavorativi, esclusi i tempi di spedizione. Il servizio di riparazione standard prevede linvio del prodotto guasto presso il nostro centro riparazioni. In questo caso non garantiamo alcun prodotto sostitutivo durante il periodo di riparazione.
Note sull'autore
Ezio Avalli Service Manager Sales Operations di National Instruments Italy
In uno spazio specifico sar allestita unesposizione a cura d aziende partecipanti, in cui sar possibile toccare con mano lattuale offerta commerciale.
Nel corso della giornata si susseguiranno seminari tecnici ten dalle aziende espositrici della durata di 30 minuti ciascuno.
Il programma, lagenda e i titoli dei seminari saranno aggiornati, man mano che verranno confermati sul sito www.ilb2b.it/control
on line allindirizzo www.ilb2b.it/control oppure via fa compilando il coupon allegato e inviandolo allo 02.36.6092.515. La partecipazione, ai seminari e alla mostra gratuita, cos come la documentazione e il buf
Per informazioni
e-mail: control@fieramilanoeditore.it Web: www.ilb2b.it/control Tel. 02.36.6092.511 - Fax. 02.36.6092.515
Control & Communication, organizzata dalle riviste Automazione Oggi e Fieldbus & Networks, la quinta mostra convegno italiana che nasce con il preciso obiettivo di fornire una panoramica sulle tecnologie pi attuali per lautomazione distribuita, partendo dalla comunicazione a bordo campo (e a bordo macchina) fino a salire ai livelli pi elevati di supervisione e controllo. La mostra convegno, che coprir il territorio italiano seguendo un percorso itinerante, dunque una delle pi importanti occasioni di aggiornamento per tutti gli addetti ai lavori che si occupano di bus di campo, raccolta dati, elaborazione e controllo, interfacciamento uomo macchina, supervisione ecc. Levento, unico nel suo genere, nasce come unione delle gi collaudate mostre convegno HMI & Software Automation e Fieldbus & Networks dal sensore al PC. Ci a sottolineare la stretta complementariet dei mondi della comunicazione, del controllo, della presentazione e della supervisione, le cui tecnologie non possono vivere nellazienda se non a stretto contatto tra loro e come base indispensabile per la gestione dei livelli pi elevati.
Come arrivare
Sheraton Hotel Nicolaus BARI IN AUTOMOBILE: Lalbergo situato in un moderno quartiere residenziale ridosso delle pi importanti arterie stradali. Dall'Autostra A14 uscire a Bari Nord. Seguire le indicazioni per Brindi Lecce. Prendere luscita 11 Poggiofranco e seguire le indicazioni per lhotel. Dista 1,5 Km dal Centro Storico, dallaeroporto e 6 Km dalla stazione ferroviaria
Palacongressi RIMINI
IN AEREO: L'Aeroporto Federico Fellini si trova nelle immediate vic degli alberghi e dei centri congressi. L'Aeroporto Internazionale di Rimini collegato con voli di linea rego con Roma Fiumicino e con altri aeroporti internazionali. L'Aeroporto di Bologna si trova a circa 100 km d'autost da Rimini ed raggiungibile in un'ora, anche mediante navette disponibili a richiesta.
IN AUTO: Rimini collocata lungo l'Autostrada A14, che la collega direzione Nord con Bologna e Milano e in direzione Sud Bari. Quattro uscite autostradali: Rimini Nord, Rimini Sud Riccione e Cattolica. Con la A14 da Rimini si raggiunge comodamente la A4 per Venezia e la A22 per il passo de Brennero. E altrettanto comodamente si raggiunge la A1 Firenze, Roma, Napoli.
IN TRENO: Stazioni sia a Rimini che a Riccione e a Cattolica. Da qu pu comodamente raggiungere Bologna con 1 ora di tre In 3 ore si pu raggiungere Milano, in sole 2 ore si arriva a Firenze e in 4 ore a Roma.
ORGANIZZATO DA:
Orario
dalle ore 9.00 alle ore 17.00
prov tel
cap fax
Consenso ai sensi dellart. 23 del D.Lgs n. 196 del 30 giugno 2003. Letta la nota informativa riportata su questa rivista, esprimi il tuo consenso al trattamento, alla comunicazione dei tuoi dati personali ed ai correlati trattamenti ai soggetti che svolgono le attivit indicate nella informativa stessa. In mancanza del tuo consenso la registrazione non potr essere eseguita. ACCETTO NON ACCETTO Esprimi/nega il tuo consenso alla comunicazione dei dati personali ed ai correlati trattamenti ad aziende terze che ne facciano richiesta ai fini pubblicitari e di marketing. ACCETTO NON ACCETTO
REPORT
10
CRISI 0 NIDAYS 1
Nadia Albarello
Affluenza record a NIDays 09: anche in tempo di crisi le oppor tunit di aggiornamento giocano la par te del leone
i svolta mercoled 25 febbraio 2009, presso il Centro Congressi Milanofiori di Milano, la sedicesima edizione italiana di NIDays. Anche questanno, la forte adesione alla data italiana dellannuale conferenza mondiale dedicata alla Progettazione Grafica di Sistemi ha confermato lelevato interesse degli addetti ai lavori e del mondo accademico per questo appuntamento. Sono stati infatti oltre 500 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 33 postazioni dimostrative. Alla conclusione dei lavori, Lino Fiore, Direttore Generale di National Instruments Italy, ha voluto celebrare i primi 20 anni di attivit della filiale condividendo con i partecipanti alcuni ricordi e avvenimenti salienti di questa avventura italiana. Particolare rilievo stato dedicato alla possibilit di mettere alla prova le proprie conoscenze. Per la prima volta i partecipanti di NIDays 09 iscritti allesame hanno potuto sostenere la certificazione Clad (Certified LabVIEW Associate Developer) gratuitamente in due sessioni promeridiane. Oltre il 50% degli esaminandi riuscito ad ottenere la certificazione Clad. Per maggiori informazioni sulla certificazione possibile visitare la pagina web ni.com/training/i. Anche le Prove pratiche di automazione su piattaforma PAC CompactRIO e LabVIEW, di acquisizione dati con LabVIEW e NI CompactDAQ e di visione artificiale hanno rappresentato unoccasione importante di esercitazione ed aggiornamento per chi volesse provare le piattaforme National Instruments nel proprio settore di interesse.
Le conferenze La sessione plenaria - apertasi con la keynote di John Hanks, Vicepresidente Industrial Embedded di National Instruments Corporation, Matteo Bambini, Marketing Manager, Fabio Cortinovis, Area Sales Manager e Roberto Isernia, Technical Marketing Leader, di National Instruments Italy, ha affrontato il tema dellinnovazione in tempi di crisi, introducendo il concetto di 'lean innovation' o innovazione snella (mutuando il termine da lean manufacturing), ovvero la capacit di risposta e reazione in tempi di difficolt con idee nuove in tempi rapidi per ridurre i tempi di progettazione ed il timeto-market, con una panoramica sullo stato dellarte e sulle ultime tendenze tecnologiche della Progettazione Grafica di Sistemi. A seguire, Franco Anzioso del Centro Ricerche FIAT di Torino ha illustrato il caso Hegel, un esempio di applicazione avanzata di ingegneria verde per la generazione distribuita di energia ad alta efficienza. Nel pomeriggio stato dato spazio allaspetto pratico: sei 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.
Fiera Milano Spa Tel. +39 02 4997.1 | Fax +39 02 4997.7963 Numero Verde 800-820029
A P P U N TA M E N T I
10
Come sempre, vi segnaliamo i prossimi corsi di formazione di LabVIEW e i principali eventi internazionali che vedranno la partecipazione di National Instruments
LA FORMAZIONE DI NATIONAL INSTRUMENTS LABVIEW BASE I
Milano: 22-24 giugno 13-15 luglio 21-23 settembre 28-30 settembre 16-18 giugno
NOVIT SULLA FORMAZIONE! CORSI DI FORMAZIONE TEMATICI SULLE MISURE CON LUTILIZZO DEL PERSONAL COMPUTER
National Instruments ha ampliato lofferta formativa disponibile con una serie di corsi orientati alle tematiche dedicate ai metodi di misura tramite lutilizzo di strumentazione basata su Personal Computer. Tali corsi hanno lobiettivo di spiegare le basi teoriche delle diverse misure tramite luso di semplici esempi pratici gi sviluppati. I corsi non essendo focalizzati alla programmazione di software NI ma esclusivamente alle tematiche possono essere utili come utile base e/o approfondimento a tutti coloro che sono coinvolti nei processi di misura. Di seguito i dettagli e le date aggiornate dei prossimi corsi in programma.
Roma: Padova:
LABVIEW BASE II
Milano: 25-26 giugno 16-17 luglio 24-25 settembre 23-24 giugno
Padova:
LABVIEW INTERMEDIATE I
Milano: 6-8 luglio
LABVIEW INTERMEDIATE II
Milano: 9-10 luglio
LABVIEW ADVANCED I
Milano: 17-19 giugno
LABVIEW COMPACTRIO
Milano: 15-17 giugno
LABVIEW DAQ
Milano: 29-30 giugno 7-9 luglio 28-30 settembre 22-24 giugno
Roma:
LABVIEW
Visione artificiale ed elaborazione dell'immagine Milano: 1-2 luglio
A P P U N TA M E N T
Milano:
11 giugno
C2 CONTROL AND COMMUNICATION Mostra-Convegno focalizzata sulle sulle tecnologie pi attuali per lautomazione distribuita, sulla comunicazione in campo e a bordo macchina Rimini: Bari: 23 settembre 29 settembre
11 giugno
FIERE
ENERMOTIVE Manifestazione internazionale dedicata al Power e al Factory Milano: 26-30 maggio
AUTOMOTIVE TESTING EXPO Stoccarda: SENSOR + TEST Norimberga: 26-28 maggio 15-18 giugno
LabVIEW Intermediate II online: 14-16 luglio LabVIEW Base I online: LabVIEW Base II online: 15-18 settembre 15-17 settembre
LabVIEW Intermediate I online: 29-30 settembre DiaDEM Basics online: 29-30 settembre
L A B V I E W E L AVO R O
10
AAA
RICERCHIAMO
PROGETTISTA FW/SW SENIOR Candy Elettrodomestici, leader nel mercato dell'elettronica bianchi. Rispondendo direttamente al Responsabile Sviluppo Elettronica, il candidato ideale avr le seguenti responsabilit:- provvedere allo sviluppo ed alla modifica di software e firmware per sistemi Embedded destinati a controlli elettronici per elettrodomestici - sviluppare prevalentemente in linguaggio C ed a seconda delle esigenze, nei linguaggi C++, VB, LabVIEW ed Assembler - eseguire i test funzionali sul FW/SW sviluppato mantenendo laggiornamento della documentazione tecnica - coordinare lo sviluppo SW/FW dei fornitori esterni, garantendone la compatibilit con larchitettura e gli standard interni - raccogliere e verificare la documentazione dei fornitori esterni garantendone la completezza e la qualit. Laureato in Ingegneria o con cultura equivalente, il candidato dovr aver maturato almeno 4 anni di esperienza nello sviluppo FW per sistemi Embedded in ambiente di progettazione elettronica. La predisposizione al lavoro in team, l'ottima conoscenza della lingua inglese e la disponibilit a brevi trasferte all'estero e in Italia completano il profilo. Tipo contratto: Lavoro a tempo indeterminato Sede di lavoro: Lombardia. Data di pubblicazione: 06/04/2009 http://lavoro.corriere.it
Conoscete bene LabVIEW? Date unocchiata alle offerte di lavoro che abbiamo selezionato da ILVG.it
to al rilascio in produzione; gestione della documentazione sulle attivit di sviluppo; integrazione dei software in ambienti eterogenei. Profilo del candidato: laurea in discipline tecnico-scientifiche; 1-2 anni di esperienza nel ruolo; esperienza nella realizzazione di applicativi orientati al testing; spiccate doti di problem-solving e sintesi. Conoscenza della lingua inglese: conoscenze tecnico professionali. Sistemi Operativi: Windows, Linux. Linguaggi di programmazione: C, C-like; sistemi di sviluppo software, tool di debugging; LabVIEW; database relazionali. Costituir elemento preferenziale: esperienza pregressa nel settore aerospaziale. La ricerca rivolta a candidati di entrambi i sessi Per rispondere a questo annuncio inviare lettera di presentazione, CV dettagliato, fototessera in formato elettronico, comprensiva dellautorizzazione al trattamento dei dati ai sensi del DLgs 196/03 a curricula.lazio@aizoon.it citando CORSERA SV-TEST/RM/AL 733 I dati saranno trattati e conservati secondo le finalit indicate nell'informativa allegata, garantendo i diritti di cui all'art.13 del DLgs 196/03. Tipo contratto: Assunzione a tempo indeterminato Sede di lavoro: Provincia di Roma Data di pubblicazione: 27/03/2009 www.aizoon.it
prove, formalizzazione degli stati di avanzamento, validazione prototipi, ). Il candidato ideale ha i seguenti requisiti: laurea in Ingegneria Elettronica; esperienza specifica nel campo dellelettronica applicata alle macchine. Costituiranno titolo di preferenza: - la conoscenza delle logiche di programmazione software LabVIEW, LabWindows/CVI, sistemi realtime, Visual C/ C++; - la conoscenza delle logiche di programmazione firmware e dei relativi linguaggi; - brevi esperienze pregresse con ruoli tecnico-trasversali. Lazienda offre un contratto a tempo indeterminato, nonch un ambiente stimolante, con ottime opportunit di crescita professionale. Gli interessati possono inviare CV al seguente indirizzo mail: segreteria@consulemme.com o via fax allo 02/20402953, specificando il RIF. EDJ I dati saranno trattati secondo la legge 196/03. Tipo contratto: Contratto a tempo indeterminato Sede di lavoro: Cernusco sul Naviglio (MI) Data di pubblicazione: 26/03/2009 www.consulemme.com
SVILUPPATORI SOFTWARE PER SISTEMI DI TEST AIZOON, societ di consulenza tecnologica specializzata in ICT ricerca, da assumere a tempo indeterminato, sviluppatori software per sistemi di test Principali responsabilit: analisi e comprensione delle specifiche tecniche; realizzazione del software di competenza; rispetto degli standard e delle metodologie di sviluppo; esecuzione dei casi di test; gestione e suppor-
INGEGNERE ELETTRONICO JUNIOR Per nostro cliente, azienda leader nella produzione di macchine di alto contenuto tecnico, ricerchiamo ingegnere elettronico junior. La persona andr a far parte del team Sviluppo Prodotto riportando al relativo responsabile. Sar impegnato nella gestione delle problematiche elettroniche applicate alle macchine: hardware, firmware e software; parteciper direttamente e operativamente allo sviluppo delle tecnologie elettroniche e a quello delle macchine (supporto allesecuzione delle
RESPONSABILE INDUSTRIALIZZAZIONE - RIF. RH478/08 Per azienda operante nel settore della componentistica oleodinamica, selezioniamo un responsabile industrializzazione. Il candidato diplomato laureato in ingegneria meccanica, 30/35 anni, rispondendo al direttore tecnico, si occuper della progettazione e sviluppo di componenti oleodinamici nonch dellindustrializzazione del prodotto. Esperienza lavorativa: la risorsa ha maturato un'esperienza significativa nella progettazione meccanica nel settore oleodinamico, conosce i software Inventor e LabVIEW e possiede una buona conoscenza della lingua inglese.
L A B V I E W E L AVO R O
Completano il profilo dinamismo, determinazione e intraprendenza, ottima capacit di lavoro in autonomia e spiccate doti di problem-solving. Titolo di studio: diploma o laurea in ingegneria meccanica Lingue conosciute: inglese buono Tipo contratto: Contratto a tempo indeterminato Sede di lavoro: Milano Ovest Data di pubblicazione: 24/03/2009 www.incontro-lavoro.it
determinato con possibilit di trasformazione per il candidato pi brillante. Tipo contratto: Contratto a tempo determinato Sede di lavoro: Milano Ovest Data di pubblicazione: 23/03/2009 http://lavoro.corriere.it
NEO INGEGNERE ELETTRONICO Page Personnel: Il nostro cliente una primaria societ operante in ambito Aerospaziale. Requisiti: laurea in Ingegneria Elettronica, preferibile un'esperienza di stage. Si richiedono esperienza nell'utilizzo di strumentazione di laboratorio, in particolare Network Analyzer, la conoscenza di metodologie di quality assurance e testing in ambito elettronico. Competenze software tecnico (es. LabVIEW) costituiscono titolo preferenziale. La disponibilit a viaggiare e conoscenza della lingua inglese, a capacit di lavorare in autonomia e di esser proattivi sono requisiti essenziali. La risorsa dovr avere anche doti di comunicazione per potersi relazionare in modo efficace con primarie multinazionali. societ multinazionali committenti dei progetti. Stiamo cercando un giovane laureato con l'entusiasmo di confrontarsi su progetti ad altissima tecnologia e che rappresentano soluzioni combinate di elettronica e radiofrequenza. La capacit di saper effettuare misure e utilizzare strumentazione RF / banchi di collaudo automatici importante. Laurea triennale in Elettronica il titolo minimo, background tecnico costituisce un vantaggio. Il contratto iniziale a tempo
TEST ENGINEERS Ref. DKIT25948 Our client is looking for a Test Engineer to be responsible for developing and implementing various methods of testing systems and equipment. 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#. Contact hdelt@chronosconsulting.com Discipline: IT and Telecommunications Country: based in Denmark Data di pubblicazione: 19/03/2009 www.chronosconsulting.com
APPLICATION ENGINEER - STAGE La figura dellAE allinterno di National Instruments finalizzata a fornire supporto tecnico alla forza vendite (pre-vendita) ed al cliente (post-vendita). Lo stage proposto finalizzato ad acquisire una completa confidenza con soluzioni software (es. LabVIEW) e hardware (es. Schede DAQ, Sistemi di condizionamento segnali, PXI Bus, strumenti di misura on-board) in continua evoluzione, e conoscere pertanto
unampia gamma di soluzioni proposte nel mondo del test, collaudo e misura. Lo stage anche mirato a dare al tirocinante unesperienza importante nella collaborazione e interazione con i propri colleghi. Il candidato verr inserito completamente nellambiente lavorativo sotto tutti i suoi aspetti, sar quindi, informato di tutte le procedure interne alle quali ognuno di noi quotidianamente sottoposto: gestione interna, amministrativa e comportamentale. Durante il suo inserimento nella divisione del supporto tecnico verranno anche valutate le sue performance e riferiti tutti i suggerimenti tecnici di approfondimento e gestionali del cliente. Il tirocinio sar articolato in fasi ben specifiche, che permetteranno al candidato di raggiungere alla fine del periodo una piena autonomia. Qualora sia interessato a questo tirocinio, la invitiamo a presentare il curriculum vitae autorizzando il trattamento dei propri dati personali in conformit alla normativa prevista dal Dlgs. 196/2003 ai fini delle esigenze di cui alla presente selezione condotta da National Instruments Italy S.r.l. Autorizzare altres la Nostra societ a comunicare, per finalit di selezione, i propri dati personali anche a societ che effettuano selezione per Nostro conto, nonch a clienti o fornitori di National Instruments Italy S.r.l., direttamente a: National Instruments Italy S.r.l. Risorse Umane - via A. Kuliscioff 22 - 20152 Milano Fax 02/41309215 E-mail: italy.jobs@ni.com Tipo contratto: stage Sede di lavoro: Milano Ovest www.ni.com/italy
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 Fiera Milano Editore 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, Fiera Milano Editore 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 Fiera Milano Editore 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 Fiera Milano Editore 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, Fiera Milano Editore 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.
Pubblicit
READER SERVICE
IL READER SERVICE E ON LINE!
www. READERSERVICE.IT
Sempre pi al passo con i tempi, LabVIEW WORLD la prima rivista in Italia a fornirvi il servizio di reader service on line. Ora possibile ricevere maggiori informazioni su prodotti e servizi presentati negli articoli e/o inserzioni pubblicitarie LabVIEW WORLD semplicemente registrandosi al sito: WWW.READERSERVICE.IT Compilate la cartolina virtuale e noi provvederemo a inoltrare tempestivamente la richiesta all'azienda interessata, che invier al vostro indirizzo tutta la documentazione disponibile.
In alternativa compilate questa scheda e inviatela al numero di fax:
0236519123
10
VICE
READE FIERA MILANO EDIZION SERVICE READER SE MILANO EDIZIONI F DER SERVICE FIERA MILANO READER SERVICE CE READER SERVICE EDIZIONI F FIERA READER SERVICE READ
IL SERVIZIO GRATUITO
Citt Nazione
Preparati ad affrontare il mercato pi velocemente con la progettazione grafica di sistemi, un approccio che integra software grafico aperto e hardware commerciale e che ti permette di progettare in modo iterativo e di implementare semplicemente e velocemente il tuo progetto sulla piattaforma embedded di National Instruments. Il sistema NI CompactRIO ti offre una piattaforma ideale per la prototipazione e la produzione in serie grazie a microcontrollore integrato, RTOS, FPGA programmabile, condizionamento di segnale integrato, I/O modulari e unintegrazione completa con lintuitivo software NI LabVIEW. readerservice.it n.22313
>>
Scopri come semplificare la tua progettazione embedded alla pagina web ni.com/embedded/i
02 41.309.1
ATIONAL INSTRUMENTS ITALY S.r.l. I Via Anna Kuliscioff, 22 I 20152 Milano I Tel.: 02-413091 I Fax: 02-41309215 I P.IVA/C.F.: 09777310153 CIAA Milano 1317488 I Iscr. Trib. Milano 296073/7502/23 I S.r.l.