13 - LabView World

Transcript

13 - LabView World
ISSN 1972-3008
13
FEBBRAIO
2010
E 5,00
L A P R I M A R I V I S TA I TA L I A N A P E R L A CO M U N I T À L A BV I E W
IL NUOVO
In caso di mancata consegna restituire all’editore che si impegna a pagare la relativa tassa presso il CMP di Roserio - Milano
ROBOTICS
MODULE
DI LABVIEW
LA LIBRERIA
IMAGINGLAB
PER ROBOTICA DENSO
IL NUOVO VI ICON EDITOR
SISTEMI DI MISURA
MIGLIORI CON LABVIEW
E WINDOWS 7
readerservice.it n.24990
SCENARIO
13
COSTRUIRE
SISTEMI DI MISURA MIGLIORI
CON WINDOWS 7
C
on Windows 7, l’ultima versione del sistema operativo Windows, gli utenti LabVIEW possono
accedere a nuove tecnologie. Invece di aggiungere funzionalità significativamente nuove o differenti, Microsoft ha migliorato in Windows 7 molte delle caratteristiche già introdotte in Windows
Vista, ha rifinito l’utilizzabilità dello shell e ha aumentato risposta e prestazioni del sistema.
Questi cambiamenti, uniti al focus sulla compatibilità hardware e software, rendono Windows 7 un forte
candidato per le applicazioni di test e misura più avanzate.
Ma vediamo come le applicazioni scritte nel sistema di sviluppo grafico LabVIEW possono trarre vantaggio da Windows 7 e dalle piattaforme di calcolo più recenti per aumentare throughput dei dati, migliorare le prestazioni e utilizzare tecnologie a 64 bit, di acquisizione dati tramite USB e PCI Express.
I nuovi computer con Windows 7 offrono benefici in termini di prestazioni globali e core multipli, oltre ad
essere dotati delle tecnologie bus più recenti, come slot multipli PCI Express e Hi-Speed USB. Microsoft
ha investito in modo significativo in miglioramenti USB per Windows 7, come l’eliminazione di timer inutili, la sospensione selettiva dell’hub e il minore tempo di enumerazione per i dispositivi flash USB,
aumentando quindi le prestazioni dei dispositivi di acquisizione dati USB. In recenti prove di benchmark,
il nuovo chassis NI CompactDAQ ha raggiunto un incremento del 10 per cento nell’ampiezza di banda
ottenibile con Windows 7, rispetto allo stesso hardware su Windows XP. Le maggiori prestazioni hardware, unite all’ottimizzazione multicore di Windows 7 e del software LabVIEW, si sono tradotte in un incremento di prestazioni fino al 20 per cento durante misure di I/O ad alta velocità o multifunzione.
Microsoft ha altresì ristrutturato gran parte di Windows 7 in modo da potere eseguire più task di sistema
in modo concorrente, per beneficiare dei processori multicore, sempre più diffusi. Un esempio è la GDI
(graphics device interface), riprogettata per aumentare la risposta quando si eseguono più applicazioni
simultaneamente. La nuova architettura si traduce in meno ostacoli sequenziali, quindi in un’interfaccia
utente più responsiva e in migliori prestazioni globali di sistema nelle applicazioni di misura multithread.
Il software multithread assegna processi asincroni indipendenti a thread separati, che possono essere
eseguiti in parallelo da core diversi del computer. I clock rate dei processori possono aumentare ormai
solo leggermente, ed è per questo che i produttori di processori stanno mettendo più core in un chip
singolo. Per i programmatori LabVIEW, è normale creare più task a elevato contenuto di calcoli in
una singola applicazione, eseguibili in parallelo: è semplice come disegnare due loop su un diagramma a blocchi. LabVIEW e i driver NI, come NI-DAQmx, sono multithread, aiutando a creare
facilmente applicazioni di acquisizione e analisi ad alte prestazioni senza dovere gestire
manualmente i singoli thread. Le applicazioni DAQ scritte in LabVIEW che usano hardware NI
su un computer multicore possono quindi beneficiare dei miglioramenti in Windows 7 e sono
pronte a ottimizzare ulteriormente l’uso dei processori multicore.
Infine, è da notare che la nuova versione a 64 bit di LabVIEW 2009 è la prima versione di
LabVIEW a offrire una compatibilità nativa con Windows Vista e Windows 7 a
64 bit. Le applicazioni di misura eseguite nativamente su hardware e software
a 64 bit possono quindi trarre vantaggio da una maggiore quantità di
memoria fisica, utile quando si devono elaborare grandi quantità di dati
contigui.
Valerio Alessandroni
13
SOMMARIO
SISTEMI DI MISURA MIGLIORI
01 COSTRUIRE
CON WINDOWS 7
Windows 7 è un for te candidato per
le applicazioni di test e misura più avanzate
03 DAL TEST AND MEASUREMENT AL WEB
Come ci ha spiegato il dottor Truchard,
LabVIEW è pronto a evolvere verso nuove
frontiere
06 IL NUOVO ROBOTICS MODULE DI LABVIEW
Una piattaforma di sviluppo hardware e software standard per il vostro sistema di controllo robotico
07 IL NUOVO VI ICON EDITOR
E’ più facile creare icone di VI professionali
grazie a template e glifi incorporati e a caratteristiche di editing potenziate
MIGLIORAMENTI DEI FILE TDMS IN
08 LABVIEW
2009
Il Tdms è il formato file raccomandato da NI
per il salvataggio su disco di dati di misura
basati sul tempo
10
15
LIBRERIA IMAGINGLAB PER ROBOTICA
DENSO
Rendete più intelligente il vostro sistema
robotizzato anche senza sapere programmare robot complessi
INTEGRARE UN SISTEMA ROBOTICO IN
UN’APPLICAZIONE LABVIEW
National Instruments, Denso Robotics e
ImagingLab affrontano insieme le nuove sfide
della robotica industriale
DI MISURA MIGLIORI CON
16 SISTEMI
LABVIEW E WINDOWS 7
Le nuove caratteristiche di Windows 7 possono migliorare le applicazioni LabVIEW
ALGORITMO DI CONTROLLO PER VEICO22 UNLI IBRIDI
SOLARI
Strategie di controllo in ambiente CompactRIO
per la gestione energetica ottimale di un
Hybrid Solar Vehicle - HSV
OPTOELETTRONICI PER PORTALI
25 SISTEMI
MULTIFUNZIONE FERROVIARI
Sistemi di rilievo sagoma, termico e visibile
per il monitoraggio di treni in transito
STAFFETTA TRA DUE MUSEI CON
28 UNA
ROBOT AUTONOMI
Tre robot a intelligenza distribuita per spiegare la differenza tra robot autonomo e teleguidato
GENNAIO 2010 LA FORMAZIONE È PIÙ
31 DARAPIDA
ED EFFICACE
Un nuovo percorso formativo mirato a fissare
gli attuali e futuri standard di competenze in
LabVIEW
NUOVO…NUOVE ABITUDINI: I
31 ANNO
SEMINARI ONLINE!
Nasce l’evento multimediale ‘Il Mese dei
Webcast live’
32 MEMORIZZAZIONE DEI DATI DI MISURA
Spieghiamo come memorizzare dati in un file
DATI AD UN CLIENT UTILIZZANDO
36 SERVIRE
TCP/IP
Il TCP/IP permette di trasferire informazioni
fra sistemi diversi
39 FOCUS EMBEDDED, CAUTO OTTIMISMO
La mostra-convegno ha dialogato con la
comunità del mondo embedded su tematiche
tecniche e di mercato
40 DALLA CARTA AL WEB
Link ad ar ticoli di approfondimento e altri
documenti disponibili sul web
42 LA VOCE DEGLI UTENTI
Ecco alcuni spunti di discussione apparsi di
recente sul Forum di ILVG.it
44 APPUNTAMENTI
Oltre ad organizzare propri corsi e seminari,
National Instruments sarà presente a numerosi
eventi
IN TOUR IN MAGLIA ROSA FA
46 LABVIEW
INCETTA DI PRESENZE!
LabVIEW 2009, spiegato nelle 10 tappe del
LabVIEW 2009 Tour nei mesi di ottobre e
novembre
47 LABVIEW E LAVORO
Proposte concrete per coloro che sanno utilizzare LabVIEW
AAA
A TU PER TU
13
Valerio Alessandroni
DAL
TEST AND MEASUREMENT
AL WEB
Come ci ha spiegato il dottor Truchard, LabVIEW è pronto a evolvere verso nuove frontiere
Fig. 1: “National Instruments ha avuto una piccola for tuna: quella di sviluppare in un’area, negli ultimi 20 anni, che si è dimostrata
molto vitale per la tecnologia multicore”
Il dottor James Truchard, presidente, CEO e cofondatore
di National Instruments, ha aperto NIWeek 2009 sottolineando il costante impegno di NI nell'offrire soluzioni
concrete a problemi reali, mediante lo sviluppo continuo
di nuovi prodotti e tecnologie, e mostrando come l’ambiente di programmazione grafica NI LabVIEW abbia
permesso di affrontare, superare e sfruttare le complesse sfide ingegneristiche associate alle architetture parallele e alla programmazione multicore.
Truchard ha proseguito spiegando come prodotti NI
quali LabVIEW e i nuovi dispositivi hardware basati su
Fpga hanno permesso alle società di rafforzarsi attraver-
so l’innovazione efficiente, a dispetto di un’economia
problematica.
“Con le nostre tecnologie affrontiamo le sfide, innoviamo, facciamo la differenza" ha affermato Truchard.
“LabVIEW, PXI, CompactRIO e altri prodotti NI hanno
dimostrato di essere degli ottimi strumenti per la programmazione multicore e Fpga. Continueremo a sostenere i nostri clienti nella creazione di applicazioni innovative in queste e in molte altre aree, per essere in grado
di risolvere una varietà di questioni".
Il dottor Truchard ha quindi accettato di rispondere ad
alcune nostre domande.
3
A TU PER TU
13
D:
“La rincorsa fra LabVIEW e le nuove tecnologie hardware e software non conosce rallentamenti. Qual è la situazione, attualmente? Occorre
un hardware più performante per sfruttare pienamente le nuove caratteristiche di LabVIEW
oppure LabVIEW dovrà svilupparsi ulteriormente
per sfruttare appieno le piattaforme hardware
disponibili (come i processori multicore, ecc.)?”
mazione parallela e i nuovi meccanismi sviluppati da
Intel e da altri per colmare questa lacuna stanno aggiungendo una notevole complessità all’ambiente di programmazione”.
D:
”In quali altri modi LabVIEW può aiutare gli
ingegneri a ‘fare di più’?”
R:
“Abbiamo esteso il nostro ruolo nel test and mesurement e LabVIEW, ad esempio, viene utilizzato sempre
”Sono vere entrambe le
più spesso anche per applicazioni
cose. LabVIEW è stato sviluppadi comunicazione, test ad alte
to circa oltre 20 fa da Jeff
prestazioni (come il collaudo dei
Kodosky, cofondatore di NI,
Mems) con significativi migliorache in origine lo aveva concementi in termini di costi e dimenpito come tool di programmasioni dei sistemi di test, oltre a
zione grafica per l’Apple
permettere una significativa riduMacintosh. Da allora, ha attrazione della potenza utilizzata.
versato molte iterazioni, pasDa sottolineare anche il crescente
sando alla piattaforma x86,
impiego di LabVIEW nel campo
aggiungendo supporto per il
della robotica e della meccatronimultithreading nel 1998 e per
ca. Ma LabVIEW sta permettendo
gli Fpga nel 2003. LabVIEW ha
di affrontare anche grandi probleaggiunto il supporto multicore
mi come quelli legati all’ambienper x86 nella versione 8.5.
te, ai trasporti e all’uso delle
Posso affermare che abbiamo
risorse energetiche.
avuto una piccola fortuna:
Complessivamente, LabVIEW sta
quella di sviluppare in un’area,
contribuendo a rendere migliore
negli ultimi 20 anni, che si è
il mondo in cui viviamo”.
dimostrata molto vitale per la
tecnologia multicore. Dal primo
Fig. 2: “National Instruments è riuscita a seguire
una strategia di investimento in R&S finalizzata
giorno, infatti, LabVIEW ha
”Con LabVIEW sono
all’innovazione. Abbiamo quindi raggiunto gli
sempre seguito un approccio a
stati
affrontati
molti dei proobiettivi che ci eravamo posti prima che la crisi
economica investisse l’intero pianeta”
dataflow strutturato.
blemi tipici di un reparto di
Tale approccio facilita il compiproduzione:
acquisizione
to di gestire la sincronizzazione, un problema tipico dei dati, programmazione di controllori (PAC), gestiosistemi paralleli. L’interfaccia grafica e i tool automatiz- ne di sistemi di visione e di robot, ecc. Finora,
zati di LabVIEW rendono la strada più agevole ai molti tuttavia, NI non ha mai parlato del livello supeutenti che non hanno esperienza di programmazione. riore, quello del MES, dell’ERP, dell’SCM, ecc. E’
LabVIEW, in particolare, può automatizzare l’assegna- prevedibile un’evoluzione anche in questa direzione di compiti a core e thread differenti. Può inoltre zione o vi affiderete a partner per farlo?”
generare codice C e offre tool per ottimizzare manualmente il carico della CPU, il debugging e l’uso della
”In questo momento, la cosa più probabile è che
cache nei chip multicore.
continueremo ad avvalerci di software di terze parti.
Inizialmente, quindi, abbiamo inventato LabVIEW per Abbiamo tuttavia clienti che utilizzano LabVIEW anche
creare un tool di programmazione gradevole e oggi pos- per sviluppare sistemi di livello superiore. Ad esempio, il
siamo fare con esso implementazioni di progetti multi- Cern utilizza LabVIEW per monitorizzare il riscaldamento
core. E questa caratteristica è estremamente tempestiva, dei magneti nel suo acceleratore. Ma ritengo che il
in un momento nel quale i programmatori devono nostro approccio rimarrà quello di utilizzare software di
affrontare un nuovo parallelismo.
terze parti per arrivare al livello superiore. Come ha sotPersino Intel ha dovuto rivedere profondamente il suo tolineato Jeff Kodosky nella sua keynote, stiamo anche
approccio al multithreading e ha dovuto sviluppare investendo molto per rendere LabVIEW utilizzabile via
parte dell’infrastruttura software parallela di base web. E stiamo considerando anche la convivenza di
richiesta dai suoi chip. Ma gli attuali linguaggi di pro- LabVIEW e Linux sulla stessa piattaforma hardware gragrammazione non sono stati sviluppati per la program- zie al nuovo Hypervisor introdotto con LabVIEW 2009”.
R:
D:
R:
4
A TU PER TU
D:
R: ”Questa sarà la sfida da vincere in futuro. Negli
R:
D:
“National Instruments è riuscita a seguire una strategia di investimento in R&S finalizzata all’innovazione.
Abbiamo quindi raggiunto gli obiettivi che ci eravamo
posti prima che la crisi economica investisse l’intero pianeta, riducendo le spese in altri settori.
Anche altre aziende hanno mantenuto gli investimenti in
innovazione che avevano previsto, mentre altre hanno
tagliato significativamente i loro investimenti anche in
quest’area”.
D:
”Nella sua keynote, ha affermato che è giunta l’ora che tecnici e ingegneri abbiano un maggiore potere decisionale sulle roadmap di sviluppo dei singoli Paesi. Ritiene che i politici lo permetteranno?”
Stati Uniti, in particolare, la comunità finanziaria è molto
influente e gli ingegneri non sono ancora riusciti a raggiungere una posizione altrettanto importante. Ma la
comunità tecnica deve cercare di cambiare questa situazione”.
“La nuova versione di LabVIEW sarà introdotta in un periodo nel quale, tutti ci auguriamo,
l’economia avrà ripreso a crescere. Ritiene che il
leitmotivi del 2009 – ‘do more with less’ – sarà
ancora valido?
R:
Dobbiamo sempre cercare di fare di più con meno,
anche in periodi positivi e, nel caso di LabVIEW, sarà
sempre molto importante sfruttare in modo ottimale
tutte le caratteristiche disponibili. La riduzione del timeto-market, la riduzione dei costi e la capacità di fare di
più in termini di caratteristiche rimarranno sempre elementi importanti in ogni nuovo prodotto”.
Readerser vice.it n. 1301
”La crisi economica, che nel 2009 sembra
avere raggiunto il suo apice, non ha fermato l’innovazione. Ma l’innovazione richiede denaro,
sotto forma di finanziamenti. E’ questo, allora, il
vero problema da risolvere per una piena ripresa
economica?”
&2062)7
6SHFLDOLVWLQHO352),%86
6ROX]LRQLSHU1DWLRQDO,QVWUXPHQWVFRQWHFQRORJLD352),%86
F5,23%
0RGXOR352),%86'30DVWHU6ODYHSHUVLVWHPL3$&F5,2ŒGHOOD1DWLRQDO,QVWUXPHQWV
F5,231
0RGXOR352),1(7,2'HYLFHSHUVLVWHPL3$&F5,2GHOOD1DWLRQDO,QVWUXPHQWV
)1/
*DWHZD\(WKHUQHW352),%86'3GLVSRQLELOHFRQ'ULYHUSHUDPELHQWH/DE9,(:
²,QWHJUD]LRQHUDSLGDPHGLDQWHLQWHUIDFFLD(WKHUQHW7&3,3
readerservice.it n.24686
3URGXWWRUH
&2062)7*PE+_:DFKKDXVVWUD_.DUOVUXKH_*HUPDQLD
7HO _ )D[ (PDLO LQIRLFS#FRPVRIWGH _ ,QWHUQHW ZZZFRPVRIWGH
&RQWDWWRFRPPHUFLDOH
62/,17(&$8720$=,21(61&_9LD0DU]R%_&DYHQDJR
%]D 0, _ ,WDOLD _ 7HO _ )D[ (PDLOLQIR#VROLQWHFDXWRPD]LRQHLW_ZZZVROLQWHFDXWRPD]LRQHLW
W H AT ’ S N E W
13
ROBOTICS
MODULE DI LABVIEW
IL NUOVO
Readerser vice.it n. 1302
A cura di Giorgio Luciani
Dai veicoli agricoli autonomi ai sistemi medicali mobili, il LabVIEW Robotics Module mette a disposizione una piattaforma
di sviluppo hardware e software standard per progettare il vostro sistema di controllo robotico
6
I
l LabVIEW Robotics Module si inserisce nell’ambiente di
sviluppo LabVIEW offrendo un’ampia libreria di robotica
con connettività nativa a sensori ed attuatori di robot,
algoritmi fondamentali per il funzionamento intelligente e la
percezione affidabile e funzioni di motion per fare muovere il
vostro robot o veicolo.
ALGORITMI E API SPECIFICI SULLA PALETTE ROBOTICS
LabVIEW Robotics è completo di una nuova palette ‘Robotics’
contenente nuovi algoritmi per progettare il vostro prossimo
controllore robotico. In questa nuova palette di funzioni si può
trovare tutto ciò che occorre: dai driver per sensori alla cinematica inversa.
· Usate i VI Connectivity per lavorare con altro software robotico, compresi prodotti di terze parti come Cogmation,
MobileRobotics, Skilligent e Microsoft.
· Usate i VI Obstacle Avoidance per implementare il riconoscimento di ostacoli in veicoli robotici mobili.
· Usate i VI Path Planning per calcolare un percorso verso un
punto obiettivo in una mappa che rappresenta l’ambiente
del robot.
· Usate i VI Protocols per elaborare dati formattati in protocolli di comunicazione, come i dati inviati da sensori, in
LabVIEW.
· Usate i VI Robotic Arm per creare un braccio robotico simulato ed interagire con esso. Potete eseguire calcoli dinamici
e cinematici sul braccio, simulare un braccio e così via per
prototipare il braccio robotico.
· Usate i VI Sensing per configurare, controllare e recuperare
dati dagli strumenti comunemente utilizzati nei sistemi
robotici, come dispositivi seriali e USB. Navigate nella palette Instrument I/O o usate l’NI Instrument Driver Finder per
trovare ed installare driver per strumenti addizionali.
CONNETTIVITÀ A SENSORI ED ATTUATORI
Il linguaggio di programmazione LabVIEW ha permesso agli
ingegneri di risparmiare tempo grazie al collegamento a strumentazione e dispositivi fin dalla sua prima release. Oggi,
LabVIEW è lo standard de facto per la connettività a strumentazione attraverso un’ampia gamma di driver per strumenta-
Figura 1 – LabVIEW Robotics è completo di una nuova palette
‘Robotics’ contenente nuovi algoritmi per progettare il vostro
prossimo controllore robotico
zione di alta qualità. LabVIEW Robotics ha sfruttato questa
forza incorporando un’intera suite di connettività a sensori ed
attuatori per robotica. Tali driver eliminano il laborioso compito
di scrivere, provare ed implementare driver per sensori per il
vostro sistema robotico. Infatti, LabVIEW Robotics include più
versioni di molti driver per sensori per piattaforme Windows,
real-time e basate su Fpga, assicurandovi di poter collegare
correttamente il vostro sensore per le vostre esigenze di input.
Figura 2 – LabVIEW Robotics include driver ed esempi per differenti esigenze di I/O
Note sull’autore
Laureato in ingegneria informatica presso il Politecnico di Milano,
Giorgio Luciani lavora in qualità di Application Engineer presso
National Instruments Italy.
W H AT ’ S N E W
13
IL NUOVO
VI ICON EDITOR
I
l nuovo VI Icon Editor di LabVIEW 2009 facilita la creazione di icone di VI professionali grazie a template e glifi
incorporati e a caratteristiche di editing potenziate come
layout di testo e disposizione di immagini su più livelli
NUOVE CARATTERISTICHE
Template
L’uso di un template rende più semplice identificare VI simili su
un diagramma a blocchi. Per creare il vostro template, cancellate tutte le immagini sull’icona e usate gli art tool sul lato
destro dell’Icon Editor in modo da progettare il vostro template. La maggior parte dei template LabVIEW include un campo
di testo nella parte superiore e spazio nelle parti centrale e inferiore, ma il vostro template può avere l’aspetto che desiderate.
Dopo avere salvato l’icona come template, essa apparirà nel
Potete aggiungere fino a quattro linee di testo e ogni linea può
essere ridimensionata o ricolorata usando i controlli sul tab
Icon Text. Per inserire del testo senza utilizzare i controlli Icon
Text, potete anche usare il tool text, che si trova sul lato destro
dell’Icon Editor con il resto degli art tool.
GLIFI
A cura di Giorgio Luciani
Le icone di VI in LabVIEW rendono più facile capire la funzione del vostro codice, a voi e a coloro che
potrebbero utilizzarlo in futuro
Figura 3 - Il nuovo VI Icon Editor offre accesso a centinaia di
glifi
tab Templates dell’Icon Editor ogni volta che editerete l’icona
di un VI. Selezionate il template e aggiungete altro testo e
immagini per distinguere il singolo VI dagli altri VI che condividono lo stesso template.
TESTO DELLE ICONE
Invece di dovere inserire e cancellare manualmente del testo,
i nuovi controlli di editing del testo vi permettono di digitare,
spostare, ridimensionare, ricolorare e giustificare il testo tutte
le volte che occorre.
Per editare il testo della vostra icona, cliccate sul tab Icon Text.
Figura 2 - Nel nuovo Icon Editor, editare il testo di icone è più
facile
LIVELLI
Navigate sul tab Layers per rivedere ed editare i differenti livelli nella vostra icona. Per default, i livelli sono suddivisi nel livello template, nel livello testo e nei livelli addizionali che aggiungete per glifi o disegno libero.
Ogni livello include alcuni tool per aiutarvi a customizzare quel
livello specifico. Potete cambiare l’opacità di ogni livello selezionando e trascinando lo slider blu. Potete anche nascondere
tutti gli altri livelli mentre editate un livello, premendo l’icona
occhio accanto a tali livelli.
Figura 4 - Gli strati offrono maggiore controllo quando si progettano icone di VI
Readerser vice.it n. 1303
Figura 1 - Template di un VI base
Il nuovo Icon Editor espone l’intera libreria di glifi LabVIEW per
il vostro uso. Nel tab Glyphs dell’Icon Editor, cliccate il glifo che
volete utilizzare nell’icona del vostro VI, in modo che venga
posto sul vostro cursore e possa essere utilizzato sull’icona.
Potete anche creare vostri glifi. Usate l’Icon Editor per progettare il glifo, lasciando solo l’immagine desiderata sull schermo,
quindi salvate l’icona come glifo. Esso apparirà quindi accanto agli altri glifi sul tab Glyphs.
7
W H AT ’ S N E W
13
MIGLIORAMENTI DEI FILE
TDMS
IN LABVIEW 2009
A cura di Giorgio Luciani
Il Tdms è il formato file raccomandato da NI per il salvataggio su disco di dati di misura basati sul tempo per elevate prestazioni, utilizzabilità e riuso
I
n LabVIEW 2009, sono stati introdotti nuovi miglioramenti al formato Tdms per aumentare la velocità di scrittura dei
file di un fattore 4, permettendo di raggiungere benchmark
di scrittura dei file fino a 400 MB/s.
Vi sono 4 miglioramenti principali che si traducono nell’aumento di prestazioni Tdms.
1 – BUFFERIZZAZIONE DI WINDOWS DISABILITATA
Il VI Tdms Open VI ha ora un input per specificare se disattivare o meno la bufferizzazione dei file che Windows implementa per default. Tale bufferizzazione riduce significativamente il
throughput di streaming dei data verso il disco fisso. Per
default, la scrittura Tdms bypassa ora il buffer Windows.
2 – MEMORIZZAZIONE DEI COEFFICIENTI DI SCALATURA POLINOMIALE
Un nuovo VI, il VI Tdms Create Scaling Information, permette
agli utenti di memorizzare le informazioni di scalatura polimorfica da un task NI-DAQmx o manualmente, in modo che
gli utenti possano memorizzare solo i dati grezzi. Lo streaming
dei dati grezzi in un file Tdms accelera l’applicazione e riduce
lo spazio richiesto su disco dai file di dati di un fattore 2 (risoluzione 24 bit) o 4 (risoluzione 16 bit).
3 – DATI INTERLACCIATI
In precedenza, tutti i dati di canale all’interno dello stesso segmento di file dovevano essere memorizzati come parti di
memoria contigue. Ora, vi è un nuovo input in Tdms Write che
permette agli utenti di selezionare la scrittura interlacciata dei
dati per maggiori prestazioni.
4 – IO SOVRAPPOSTI
Figura 1 – Aggiunta di informazioni di scalatura come proprietà per lo streaming di dati grezzi
8
Figura 2 – Nel VI Tdsm Write è possibile specificare la scrittura dati decimata o interlacciata
Le funzioni dei file Tdms supportano ora le scritture asincrone
su disco, o IO sovrapposti. Gli IO sovrapposti permettono a più
thread di scrivere contemporaneamente sul file, ottimizzando
le velocità di scrittura su file.
INTEGRAZIONE DAQMX
La scrittura dei file Tdms è stata ora integrata direttamente
nel driver NI-DAQmx, permettendo di ottenere il modo più
semplice e più veloce per lo streaming dei dati sulla piattaforma NI.
Il NI-DAQmx 9.0 installa un nuovo VI, il VI DAQmx
Configure Logging, che permette agli utenti di configurare
la scrittura dei dati in un file Tdms all’interno di un singolo
VI sulla palette DAQ. Ciò non solo semplifica l’uso e l’integrazione nelle applicazioni di acquisizione dati esistenti ma,
grazie ad ottimizzazioni non visibili all’esterno, è il modo più
veloce per scrivere dati su disco.
Per ottimizzare le velocità di scrittura su file, il NI-DAQmx
può eseguire lo streaming dei dati direttamente dal buffer
del dispositivo verso il disco fisso bypassando i buffer di
Windows, LabVIEW e Tdms. Il VI DAQmx Configure Logging
migliora inoltre le prestazioni e riduce l’ingombro su disco
scrivendo dati grezzi nel file Tdms, incluse le informazioni di
scalatura separate, per l’uso nella rilettura del file Tdms.
Queste ottimizzazioni si traducono in velocità di scrittura
fino a 1,2 GB/s.
Readerser vice.it n. 1304
W H AT ’ S N E W
Figura 3 – Il VI DAQmx Configure Logging permette agli utenti di impostare il data logging su Tdms prima ancora di iniziare il task
SEI UN FAN DI LABVIEW?
ENTRA NELLA NOSTRA COMUNITÀ!
Caro lettore, se ritieni che questa
nuova iniziativa LabVIEW World sia un utile
strumento per la tua attività e desideri
continuare a rimanere aggiornato sul mondo LabVIEW, collegati alla pagina
http://www.labviewworld.it
9
TIPS&TECHNIQUES
13
IMAGINGLAB
LIBRERIA
PER ROBOTICA DENSO
Carlton Heard
Con la Libreria ImagingLab per robotica Denso, potete rendere più intelligente il vostro sistema robotizzato senza dover possedere un’esperienza di programmazione di robot complessi
L
e odierne macchine di produzione a basso volume e mix
elevato richiedono robot più intelligenti, che siano in grado di interagire con il loro ambiente attraverso misure e
visione. LabVIEW rende possibili nuove applicazioni per i robot
industriali integrando misure, visione, controllo del robot e HMI
in un unico ambiente di semplice uso. La Libreria ImagingLab
per robotica Denso vi permette di rendere più intelligente il
vostro sistema robotizzato anche se non possedete un’esperienza di programmazione di robot complessi. Oltre alla produzione flessibile, con la libreria potete integrare robot Denso in
nuovi tipi di sistemi e applicazioni per test automatizzato, automazione di laboratorio e produzione di precisione.
INTRODUZIONE
Questo articolo introduce i concetti fondamentali della Libreria
ImagingLab per robotica Denso con esempi che possono servire come punto di partenza per programmare il vostro sistema robotizzato e guidato da visione Denso. Apprenderete
come usare la Libreria ImagingLab per robotica Denso ed
esplorerete applicazioni di movimento punto a punto, di movimento continuo e guidato dalla visione. Il robot Denso dovrebbe essere operativo con il pannello pensile, per ottenere il
massimo dal codice esemplificativo. Notate che l’articolo è un
esempio configurabile – non un’applicazione ‘chiavi in mano’
– e non introduce ogni aspetto della Libreria ImagingLab per
robotica Denso o dei robot Denso. Se state sviluppando un
sistema robotizzato complesso, considerate la consultazione di
un Alliance Partner National Instruments.
CONFIGURAZIONE DEL VOSTRO SISTEMA
Robslave
Per portare il robot in uno stato slave che potete controllare
con il software LabVIEW, dovete caricare e avviare un programma Denso denominato robslave.pac, che viene fornito
insieme al software b-CAP Denso sul controllore del robot.
Usate il software Denso per scaricare il robslave.pac sul controllore. Dopo esservi collegati al controllore, usate il VI DensoRobslave per avviare il programma e interrompere il programma quando uscite dall’applicazione LabVIEW.
ABILITAZIONE DEL CONTROLLO ETHERNET
Tutti i comandi del robot da LabVIEW sono inviati attraverso
un collegamento Ethernet al controllore del robot. Il controllore del robot permette il controllo da un solo indirizzo IP, che
dovete aggiungere al controllore come client valido. Per farlo
sul pannello pensile, navigate a Settings»Communications
Setting»Client. Con questo menu, potete cambiare l’indirizzo IP in modo che corrisponda all’indirizzo IP del PC o dispo-
Fig 1 – Inizializzazione: impostazione di parametri, velocità e posizione del controllore del robot
10
TIPS&TECHNIQUES
sitivo real-time che state collegando al robot.
Dovete inoltre impostare il robot in modo che
possa ricevere comandi attraverso Ethernet.
Navigate a Settings»Communications
Setting»Ext Run sul pannello pensile e
selezionate Ethernet come porta di comunicazione da cui eseguire i programmi. La porta Ethernet deve anche avere permessi di Lettura/Scrittura, che sono impostati in
Settings»Communications Setting»Permit.
CABLAGGIO
Per controllare il robot Denso con LabVIEW, dovete ruotare la
chiave del pannello pensile su Auto e attivare le linee Enable
Auto sulla porta Safety I/O. Inoltre, dovete collegare l’ingresso
Stop all Steps della connessione min-I/O sul controllore Denso,
o linea step-stop, a un’alimentazione a 24 V. Questa può essere un’alimentazione a 24 V esterna, oppure potete modificare
i ponticelli all’interno del controllore in modo che i 24 V vengano erogati internamente. Per maggiori informazioni consultate il manuale Denso.
INIZIALIZZAZIONE
Collegamento del controllore del robot
Il primo passo nell’applicazione di programmazione di un
robot Denso è l’inizializzazione del robot e dei suoi parametri.
Aprite una connessione al controllore del robot usando il VI
Denso-Open e specificando l’indirizzo del controllore e il
numero di assi del robot. Per trovare l’indirizzo IP del controllore del robot, navigate a Settings»Communications
Settings»Address sul pannello pensile Denso. Notate che
dovete aggiungere l’indirizzo IP del PC o target real-time che
si collega al controllore del robot come client valido nel menu
di impostazione delle comunicazioni del robot come descritto
sopra. Le opzioni dei VI Denso-Open per il numero di assi sono
6, 5, 4 e Undefined. Non è necessario differenziare fra modelli differenti di ogni robot che hanno lo stesso numero di assi.
Per esempio, potete eseguire programmi scritti per un robot a
sei assi serie VS usando un robot a sei assi serie VP senza alcun
cambiamento di codice LabVIEW.
IMPOSTAZIONE DELLE VELOCITÀ
In LabVIEW potete impostare due tipi differenti di velocità del
robot: esterna e interna. La velocità esterna è usata nella maggior parte dei casi per controllare le variazioni fra i movimenti
dopo l’implementazione. Per esempio, potrebbe essere necessario muovere il robot ad una velocità più bassa durante l’assemblaggio di una parte, ma muoverlo a una velocità più elevata quando ritorna a prelevare un’altra parte. Quando il robot
ha posizionato la parte o prima che prelevi una parte, richiamate semplicemente il VI della velocità esterna per impostare
la velocità corrente desiderata. La velocità interna è usata normalmente per scopi di test. Se è necessario eseguire un test a
una velocità del 25 per cento, potete impostare la velocità
Fig 2 – Work e Tool: impostazione dell’utensile e dell’area di lavoro correnti
interna a 25 e tutte le velocità dei movimenti del robot saranno scalate al 25 per cento del loro valore. In caso contrario,
dovreste entrare nel codice e impostare ogni velocità al 25 per
cento del suo valore originale. Ciò può essere laborioso, perché alcune applicazioni richiedono una grande varietà di velocità per i vari movimenti. Per sicurezza, impostate le velocità
interna ed esterna dopo avere avviato robslave.pac per essere
certi che il robot si muova alla velocità corretta ogni volta che
eseguite il programma.
ACCENSIONE/SPEGNIMENTO
Dopo avere aperto un collegamento con il controllore del
robot, al robot non viene fornita alimentazione finché non
richiamate il VI Denso – Servo – Set ON-OFF. Richiamate questo VI con l’ingresso dello stato del motore impostato a Motor
On prima di inviare qualsiasi comando di movimento e cambiate l’ingresso dello stato del motore a Motor Off quando
tutti i movimenti sono terminati.
WORK E TOOL
Con i robot Denso, l’utente può impostare l’utensile o endaffecter corrente, fissato all’estremità del robot. Con questa
funzionalità, il cambiamento dell’end-affecter non richiede un
cambiamento completo nelle posizioni programmate. Al contrario, questa caratteristica applica automaticamente un offset
dei movimenti per raggiungere la stessa posizione target in
base ai parametri dell’end-affecter utilizzato. Il sistema di
coordinate, o area di lavoro, definisce le posizioni assolute
quando si comanda il robot usando coordinate cartesiane e
trans. La Libreria ImagingLab per robotica Denso permette
all’utente di impostare ed editare l’utensile e l’area di lavoro
correnti, nonché di aggiungere nuovi utensili e aree di lavoro
usando i VI illustrati nella fig 2. La figura indica come impostare l’utensile e l’area di lavoro correnti e nuovi valori per un
utensile/area di lavoro lavoro specifici, ma potete cambiare
l’ingresso da Set a Get per ottenere i valori e le impostazioni
correnti.
MOVIMENTO PUNTO A PUNTO DEL ROBOT
Movimento mediante coordinate
Potete comandare il movimento del robot con tre metodi:
coordinate, posizione e Denso Drive. Quando muovete il robot
mediante coordinate, usate il VI Move by Coordinates per selezionare il tipo di coordinate (cartesiane, congiunte o trans) e
immettete quindi il gruppo di coordinate nel VI. Le transvariabili sono variabili di posizione nella matrice di trasformazione
11
TIPS&TECHNIQUES
13
omogenea, spiegata più in dettaglio nel manuale del robot Denso.
Quando usate coordinate cartesiane, notate che fanno riferimento al
sistema di coordinate o numero di
lavoro corrente. Per esempio, se
l’utente esegue un movimento cartesiano mentre usa il sistema di
Fig 3 – Comando del movimento del
coordinate base e quindi cambia il
robot mediante coordinate
sistema di coordinate a Work 2, è
possibile che lo stesso movimento cartesiano possa comandare il movimento del robot in una posizione differente rispetto
a prima. L’uso dei sistemi di coordinate è discusso con maggiori dettagli nel paragrafo della guida mediante visione.
MOVIMENTO MEDIANTE POSIZIONE
Quando muovete il robot mediante posizione, instruite il robot
a muoversi in un
punto prememorizzato. Tale punto può
essere una variabile
di posizione, congiunta o trans.
Potete memorizzare
le tre variabili usando il pannello pensiFig 4 – Comando del movimento del
robot mediante posizione
le Denso o LabVIEW.
Il VI Move by
Position, illustrato nella figura 4, richiede un ingresso per selezionare il tipo di variabile e il numero della variabile.
DENSO DRIVE
Il terzo metodo per muovere il robot è il VI Denso-Drive, che
permette all’utente di eseguire un movimento relativo o assoluto su assi specifici. L’utente specifica la Move Option e il Pass
Motion, discussi più avanti in questo articolo e il tipo del movimento: relativo o assoluto. La caratteristica Drive Parameters è
un array di cluster d’ingresso che
contiene l’asse target e la coordinata
dell’asse. Per esempio, se volete che
il quarto asse si muova di 16 mm,
selezionate semplicemente Relative
dal selettore polimorfico del VI, scegliete Axis 4 sotto Drive Parameters e
impostate la coordinata a 16. Poiché
Fig 5 – Comando del movimento del
l’ingresso Drive Parameters è un
robot mediante Denso Drive
array, potete comandare più movimenti su vari assi; tuttavia, essi devono essere tutti relativi o
assoluti e avere gli stessi Move Option e Pass Motion.
ATTESA CHE TERMINI IL MOVIMENTO
I VI di movimento del robot non sono bloccanti: ciò significa
che quando avete inviato un comando di movimento al con-
12
trollore del robot, il programma prosegue fino al prossimo VI
senza attendere che il movimento sia completato. Il prossimo
paragrafo sui movimenti a punti multipli esamina come potete usare questa caratteristica per accodare i comandi e rendere continui i movimenti. Dopo il richiamo del VI finale di movimento del robot, è normale spegnere il robot. Poiché l’esecuzione del VI prosegue immediatamente dopo l’invio del
comando di movimento finale al robot, il VI Power Off interrompe il robot e distacca l’alimentazione prima che il movimento finale sia stato completato. Per bloccare l’esecuzione del
codice LabVIEW finché i movimenti sono stati completati, usate
il VI Wait Arm Stop. Vi è tuttavia uno scenario nel quale i VI di
movimento del robot possono essere bloccanti. Come accennato in precedenza, i VI di movimento del robot possono accodarsi sul controllore del robot se vengono inviati più comandi
di movimento prima che il primo movimento sia stato completato. Tale coda può contenere fino a tre comandi di movimento e, quando la coda è piena, ulteriori comandi di movimento
vengono rifiutati, facendo sì che il VI di attesa del movimento
del robot blocchi finché un registro della coda non è libero.
MOVIMENTI DEL ROBOT A PUNTI MULTIPLI
Movimenti a punti multipli
L’esecuzione in serie di più comandi di movimento del robot
accoda i movimenti sul controllore del robot e permette di unire
fra loro i movimenti in modo da produrre un percorso continuo
fra le posizioni. Questo tipo di unione è particolarmente utile
nelle applicazioni pick and place, che muovono il robot in un
punto per prelevare una parte e poi in un altro punto per depositare la parte in un assemblato o in altra destinazione.
PICK AND PLACE
Nelle tipiche applicazioni pick and place, il robot non si muove
direttamente nel punto di pick o place, ma si muove invece da
qualche posizione di offset al di sopra della parte. Ciò evita che
l’end-affecter urti le parti o le danneggi mentre si muove in posizione e permette il posizionamento della parte all’interno di
Fig 6 – Approach e Move: uso del VI Approach per por tare il
robot in una posizione di offset al di sopra della par te e quindi
del VI Move per muovere il robot nell’esatta posizione target
TIPS&TECHNIQUES
qualche posizione protetta da pareti. Per eseguire questi tipi di
movimenti, usate i VI Approach, Move e Depart. I VI Approach e
Move usano la stessa posizione target, ma Approach ha un
ingresso per la distanza di approccio, o offset dalla parte.
Raggiunta tale posizione di approccio, viene richiamato il VI
Move per il movimento nell’esatta posizione target e, dopo l’uso
dell’end-affecter, viene usato il VI Depart per ritornare nella posizione di offset prima di procedere nel punto successivo.
PARAMETRI DI MOVIMENTO
Fig 7 – Il cluster dei parametri di moto
Interpolazione
Un ingresso richiesto per ogni VI di movimento è il cluster dei
parametri di moto. Le voci in tale cluster specificano interpolazione, pass motion e move option. L’interpolazione ha effetto
sul percorso seguito fra due posizioni. Move P è il tipo di interpolazione di default e, quando è selezionato, il robot segue il
percorso più efficiente verso il prossimo punto. Move L richiede che l’end-affecter si muova secondo un percorso lineare
fino al prossimo punto. Ciò è utile per i casi in cui la parte da
manipolare debba essere sollevata verticalmente o debba passare attraverso un canale lungo il percorso verso la prossima
posizione. E’ importante notare, tuttavia, che quando si usa
l’interpolazione lineare, il percorso fra i due punti deve essere
uno spazio valido per il movimento del robot. Per esempio,
non potete eseguire un movimento lineare da un lato all’altro
del robot, perché ciò richiede che il robot si muova attraverso
sé stesso.
Pass Motion
La seconda voce nel cluster specifica il moto di passaggio da
usare con il movimento. Un moto di passaggio determina il
moto per arrivare nella posizione finale. @0, noto come valore di default, arresta il robot quando il valore del comando del
servosistema corrisponde alla posizione di destinazione.
Potete usare il moto di passaggio non solo per movimenti ad
una posizione finale, ma anche per il passaggio attraverso una
posizione che deve essere raggiunta entro una certa deviazione. Un altro metodo per passare attraverso una posizione è un
moto di passaggio di @P, che potete usare per collegare il
movimento corrente con il movimento successivo. L’uso di @P
fa sì che il movimento corrente finisca a una certa distanza
dalla posizione target, in modo che si possa passare attraverso tale posizione sul percorso verso la posizione successiva.
Analogamente all’uso del valore di default di @0, l’uso di @E
arresta il movimento nella posizione target, ma @E usa il valore dell’encoder per arrestare il moto quando il motore raggiunge la posizione di destinazione al suo valore di encoder
corrispondente. Questo è il metodo migliore da implementare
per arrivare esattamente alla posizione target.
Fig 8 – I diversi compor tamenti specificati dall’ingresso pass
motion
Move Option
L’ultimo parametro è Move Option, che ha i valori Default e
Next. Quando selezionate Default, il movimento corrente che
il robot sta eseguendo deve raggiungere completamente la
sua posizione finale prima che il robot proceda con il prossimo
movimento. Quando selezionate Next, il robot procede alla
successiva istruzione di movimento senza attendere che il
movimento sia stato totalmente completato. Ciò crea un effetto di continuità fra i due movimenti. I movimenti Approach e
Depart vengono normalmente eseguiti con Next come Move
Option perché le posizioni di offset spesso non sono il movimento finale e non è essenziale che tali movimenti siano stati
totalmente completati o che il robot venga portato ad un arresto prima di procedere.
ROBOTICA GUIDATA DALLA VISIONE
Calibrazione
Il ponte fra il sistema di visione e il robot è un sistema di coordinate condiviso. Il sistema di visione trova una parte e ne
riporta la posizione ma, per instruire il robot a muoversi in
quella posizione, il sistema deve convertire le coordinate in
unità accettate dal robot. La calibrazione permette al sistema
di visione di riportare le posizioni in unità reali come i millimetri, che sono utilizzati con le coordinate cartesiane del
robot. Un metodo comune di calibrazione è usare una griglia
di punti. Per informazioni più approfondite sulla calibrazione
delle immagini, consultate l’NI Vision Concepts Manual.
Potete usare la griglia di punti per calibrare il sistema di visione e anche per calibrare il robot con il sistema di visione.
Quando calibrate il sistema di visione, dovete selezionare
un’origine per definire il piano x-y. Normalmente si seleziona
uno dei punti d’angolo come origine e si definisce una riga o
una colonna come asse x.
Il metodo usato dal robot per creare un sistema di coordinate
è simile, quindi potete usare lo stesso punto sulla griglia di
calibrazione che selezionate come origine del sistema di visione anche come origine del robot. Muovete semplicemente il
robot in quel punto, memorizzate il punto come variabile di
posizione sul controllore del robot, muovete il robot lungo gli
assi x e y e memorizzate quei punti come variabili di posizione. Potete memorizzare le variabili di posizione usando
13
TIPS&TECHNIQUES
13
MOVIMENTI RELATIVI E ASSOLUTI
Nella maggior parte dei casi, una telecamera ha una posizione fissa relativamente al robot. Quindi, quando avete portato
a termine una calibrazione del robot e del sistema di visione,
potete immettere direttamente l’uscita di posizione calibrata
dal codice di visione nei VI di movimento del robot. Ciò significa usare dei movimenti assoluti. In altri casi, potete fissare la
telecamera all’end-affecter o ad altri dispositivi in movimento.
Poiché la vista della telecamera cambia, dovete aggiornare la
calibrazione con la vista o fornire movimenti relativi. Quando
si usano movimenti relativi, la posizione target viene fornita
come offset relativo dalla posizione corrente, ad esempio
quando la telecamera richiede che il target sia al centro del
frame ad ogni acquisizione. Quando il target è fuori centro, i
risultati dell’immagine comandano il robot a muoversi di una
quantità relativa finché il target è ricentrato. Potete anche
Fig 9 – Calibrazione del robot passando le coordinate usate per
calibrare il sistema di visione
14
usare un sistema ibrido in situazioni in cui la telecamera fissa
fornisce movimenti assoluti per prelevare parti e muovere il
robot nell’area di assemblaggio. Potete usare una seconda
telecamera per la guida precisa nella posizione finale.
PARALLEL PROCESSING
La Libreria ImagingLab per robotica Denso ha un’API sequenziale in cui i comandi vengono eseguiti nell’ordine in cui sono
stati programmati, ma in molte applicazioni il codice di controllo del robot potrebbe non essere l’unico codice da esegui-
Fig 10 – Esempio di flowchar t per il codice di visione eseguito
in parallelo con i VI del robot
re. Acquisizione ed elaborazione tramite visione, HMI e interfacce utente, gestione degli allarmi, controllo di dispositivi di
alimentazione e altri processi di comunicazione sono tutti task
che possono essere eseguiti in parallelo al controllo del robot.
LabVIEW offre molte architetture, come l’architettura MasterSlave o Producer-Consumer, che sono in grado di gestire vari
task, e potete selezionare un’architettura in base alla vostra
specifica applicazione. L’acquisizione ed elaborazione di
immagini non deve essere necessariamente in linea con i
comandi del robot quando si implementano applicazioni robotiche guidate dalla visione, quindi l’uso di un’architettura di
parallel processing permette a queste funzioni di svolgersi
contemporaneamente ai comandi del robot e ad altri
processi di controllo. Ciò mantiene il robot in moto continuo, perché esso non deve aspettare che il codice di
visione termini prima di muoversi. Quando il robot ha
lasciato l’area di osservazione, potete acquisire una
nuova immagine e implementare il riconoscimento e l’ispezione di pattern geometrici mentre la parte precedente è assemblata o spostata nella sua posizione di
piazzamento. Quindi, quando la parte precedente è
stata piazzata, la posizione della parte successiva è pronta per
essere inviata ai VI di movimento del robot.
Readerser vice.it n. 1316
LabVIEW o il pannello pensile Denso. Dopo avere completato
questa operazione, potete usare il pannello pensile Denso per
autocalcolare un sistema di coordinate o un’area di lavoro
sulla base delle tre posizioni memorizzate. Per usare il tool di
autocalcolo sul pannello pensile Denso, navigate dallo schermo base ad Arm»Auxiliary Functions»Work»Auto
Calculate. Quando siete nel menu di autocalcolo dell’area di
lavoro, selezionate semplicemente le variabili di posizione che
corrispondono alle variabili di posizione dell’origine, dell’asse
x e del piano x-y memorizzate come spiegato in precedenza.
Potete immettere direttamente le posizioni del sistema di
visione calibrato nei VI di movimento cartesiano del robot
quando l’autocalcolo è terminato e l’area di lavoro recentemente creata è impostata come area di lavoro corrente utilizzata. Osservate la figura 9 per un semplice esempio di passaggio delle coordinate. Questi risultati che vengono passati
direttamente ai VI di movimento del robot includono anche
l’angolo di corrispondenza, che è un’uscita dei risultati di riconoscimento del pattern geometrico del sistema di visione. Un
altro metodo di calibrazione è l’immissione diretta dei parametri del sistema di coordinate anziché utilizzare l’autocalcolo incorporato sul pannello pensile. Potete farlo con il pannello pensile Denso o LabVIEW. Consultate il manuale Denso per
maggiori informazioni sui metodi di calibrazione del robot.
EVENTI
13
SISTEMA
ROBOTICO IN UN’APPLICAZIONE
LABVIEW
I
n collaborazione con Denso e
National Instruments, ImagingLab,
Alliance Partner di National
Instruments Italy, ha rilasciato lo scorso
25 novembre una nuova libreria di funzioni grafiche di LabVIEW in grado di
integrare tutti gli aspetti di un sistema
robotico all'interno di un'unica applicazione LabVIEW, senza bisogno di competenze specifiche nella programmazione robotica. La nuova libreria è in grado
di integrare la tecnologia di misura e
visione di National Instruments all’interno dei robot industriali Denso, comunicando con i controller per guidare la
movimentazione dei bracci robotizzati
tramite LabVIEW.
La nuova libreria è una collezione di funzioni grafiche di facile utilizzo e consente di utilizzare un unico ambiente software per il controllo e l’integrazione di
ciascun aspetto della macchina, dalla
movimentazione di componenti e controllo del robot alle misure avanzate e
visione artificiale. La Libreria ImagingLab
per robotica Denso si installa come un
set di funzioni direttamente sul
LabVIEW ed è in grado di operare anche
con LabVIEW Real-Time, integrando
quindi, la flessibilità della programmazione grafica di sistemi di LabVIEW con
la potenza di un sistema operativo realtime. Utilizzando la libreria con i sistemi
di visioni integrata NI Smart Camera,
sarà possibile, inoltre, sviluppare applicazioni di visione industriale e robotica,
dalle più semplici alle più complesse,
integrando software e hardware per la
misura NI.
Grazie all'intuitività di LabVIEW, è possibile ora integrare robot industriali nelle
applicazioni di automazione di laborato-
rio, assemblaggio di componenti di
precisione e collaudo di parti complesse. Inoltre, rispondendo alle più
attuali esigenze di riduzione dei
costi e tempi di sviluppo, la libreria
robotica di ImagingLab rappresenta
la soluzione commerciale ideale per
l’integrazione del braccio robotico
per efficienza e time-to-market.
“LabVIEW è l'ambiente di sviluppo
preferito da molti tecnici e ingegneri a livello globale” sostiene
Toyohiko Ito, direttore di Denso
Wave, società del gruppo Denso per
lo sviluppo e la produzione di robot
industriali. “Incoraggiare i clienti
all’utilizzo di LabVIEW per controllare i robot Denso contribuirà ad
aumentarne l’efficienza e ridurre il
time-to-market”Maggiori informazioni nell’articolo a
pag. 10 oppure sul sito:
www.imaginglab.it
Note sull’autore
Nadia Albarello, laureata in Lingue Moderne
e Comunicazione alla Karl Franzens
Universität di Graz, Austria, lavora in
qualità di Marketing Communications
Manager presso National Instruments Italy.
Readerser vice.it n. 1385
National Instruments, Denso Robotics e ImagingLab insieme per affrontare le nuove sfide nel campo della robotica
industriale
Nadia Albarello
INTEGRAZIONE DI UN
15
TIPS&TECHNIQUES
13
LABVIEW E
WINDOWS 7
IMPLEMENTARE SISTEMI
DI MISURA MIGLIORI CON
Elijah Kerry
Le nuove caratteristiche di Windows 7 possono migliorare le applicazioni LabVIEW, soprattutto se si utilizzano le versioni a 64 bit del sistema operativo Microsoft e del software
National Instruments
Q
uesto articolo introduce alcune delle notevoli nuove
caratteristiche e miglioramenti del sistema operativo
Windows 7 concentrandosi sulle esigenze di ingegneri
e scienziati. Viene fatta una panoramica sulla gestione delle
reti, la sicurezza, l’usabilità e le performance del nuovo sistema operativo e delle applicazioni realizzate con LabVIEW.
NETWORKING E CONDIVISIONE FILE
Le applicazioni ingegneristiche utilizzano dataset sempre più
grandi e condividono risultati e report di test, grazie alla disponibilità di modi per impostare e condividere i file facilmente
e semplicemente attraverso una rete. Windows 7 facilita il collegamento a una rete, la creazione di reti domestiche e la condivisione di file fra i vostri computer. Microsoft ha semplificato
il processo di collegamento alla vostra rete wireless, che richiede molti meno click in Windows 7.
Invece di dovere attraversare molte finestre di dialogo, potete
collegarvi a una rete direttamente dalla barra dei task con
pochi click.
In Windows 7, potete designare una rete come vostro
HomeGroup, cosa che vi permette di condividere file in
modo semplice e sicuro fra i computer di questa particolare
rete. HomeGroup vi permettre inoltre di condividere stampanti collegate a USB con altri PC Windows 7.
LIBRERIE
Per capire meglio il concetto di librerie in Windows 7, dobbiamo tornare a Windows XP e Vista.
Queste versioni precedenti di Windows includevano un set di
cartelle speciali chiamate ‘My Documents’ per memorizzare
contenuti dell’utente. In Windows Vista, queste speciali cartelle erano indicizzate automaticamente, permettendo all’utente
di eseguire ricerche più veloci. Molti utenti Windows, tuttavia,
memorizzavano i loro dati in altre cartelle come c:\temp; queste cartelle non erano indicizzate automaticamente, con la
conseguenza di prestazioni di ricerca più basse. In Windows 7,
16
libraries risolve il problema permettendo all’utente di
aggiungere file o cartelle alla libreria indipendentemente dalla
sua effettiva posizione nel file system.
SICUREZZA
La sicurezza è sempre una priorità. Non c’è nulla di peggio che
perdere mesi di tempo di sviluppo a causa di un attacco di
malware. Soprattutto in un ambiente aziendale o di ricerca, si
desidera evitare che i propri dati sensibili cadano nelle mani
sbagliate.
USER ACCOUNT CONTROL
Nell’ambito delle nuove caratteristiche di sicurezza, Microsoft
ha migliorato lo User Account Control (UAC) in Windows 7.
Introdotto in Windows Vista, l’UAC era stato progettato per
avere la certezza che nessun cambiamento di sistema si fosse
verificato senza la consapevolezza dell’utente ed un permesso
dell’amministratore.
Tuttavia, esso allertava gli utenti su pressoché qualsiasi cambiamento eseguito.
Il nuovo UAC in Windows 7 è più intelligente e ha diversi livelli di sicurezza che potete impostare. Per default, esso ora vi
avverte solo quando un programma cerca di eseguire un cambiamento del sistema, non quando è un utente a eseguire un
cambiamento.
I quattro livelli di sicurezza sono:
· Livello 4. Sollecita il permesso dell’utente quando programmi installano software, eseguono cambiamenti o modificano le impostazioni di Windows.
· Livello 3. Sollecita il permesso dell’utente quando programmi installano software, eseguono cambiamenti o modificano le impostazioni di Windows. Questa impostazione non
esegue un sollecito quando l’utente cambia le impostazioni
di Windows.
· Livello 2. Come il livello 3, ma il prompt dell’UAC appare sul
desktop normale anziché sul Secure Desktop. Notate che il
TIPS&TECHNIQUES
Secure Desktop è una barriera contro il software che
potrebbe cercare di evitare la vostra risposta.
· Livello 1. Non sollecita il permesso dell’utente. Questo livello essenzialmente disattiva l’UAC.
BITLOCKER DRIVE ENCRYPTION
Microsoft ha introdotto la BitLocker Drive Encryption in
Windows Vista per aiutare a proteggere i dati sensibili contro
l’accesso da parte di utenti non autorizzati. Windows 7 estende la protezione BitLocker ai dispositivi di memoria USB e ne
semplifica ulteriormente l’uso. Sulla maggior parte dei drive,
potete accedervi direttamente dal menù contestuale aperto
con un click del tasto destro.
USABILITÀ
Questo paragrafo esamina alcune delle caratteristiche di
Windows 7 che permettono di risparmiare tempo, essendo
state progettate per migliorare l’esperienza dell’utente con i
compiti quotidiani.
NUOVA BARRA DEI TASK MIGLIORATA
La nuova barra dei task in Windows 7 fornisce ora una doppia
funzionalità, consentendo sia di scegliere e commutare rapidamente fra le applicazioni aperte, sia di aprire nuove applicazioni.
La barra Quick Launch è stata sostituita con la possibilità di
portare rapidamente qualsiasi applicazione sulla
barra dei task stessa e cliccare quindi sull’icona della
barra dei task per aprire l’applicazione.
Più istanze della stessa applicazione sono ora tabulate sulla barra dei task, e potete richiamare miniature animate delle istanze passando sopra la voce corrispondente
della barra dei task. Passando sopra una singola miniatura
animata si può vedere un’anteprima a dimensioni intere di
quella particolare istanza.
La nuova caratteristica Jump Lists, accessibile cliccando con il
tasto destro su un’applicazione sulla barra dei task, è fondamentalmente una comoda scorciatoia verso i task più comuni
per quell’applicazione.
Gli sviluppatori di applicazioni e i programmatori che hanno
più finestre del software NI LabVIEW possono trovare utili le
miniature animate nella barra dei task tabulata. Muovendosi
sopra le differenti tabulazioni, uno sviluppatore o
programmatore può localizzare rapidamente un VI
desiderato. Dopo averlo trovato, potete utilizzare Aero
Shake e ‘scrollare’ la barra del titolo della finestra del VI per
minimizzare tutte le altre finestre aperte.
DISPOSITIVI E STAMPANTI
A differenza delle precedenti versioni di Windows, dove dovevate configurare ogni classe di dispositivi e accedervi da finestre separate, potete usare Windows 7 per interagire con tutti
i dispositivi connessi al computer, inclusi fotocamere, telefoni e
stampanti, da una singola finestra.
Windows 7 introduce inoltre il Device Stage. I dispositivi compatibili con il Device Stage migliorano l’interazione del dispositivo all’interno di Windows permettendo agli utenti di accedere ai task fondamentali del dispositivo stesso attraverso una
singola finestra nella barra dei task. Per esempio, una fotocamera compatibile con il Device Stage genererebbe una finestra
sulla barra dei task e un task di salto di tale finestra potrebbe
includere task dallo scarico di immagini alla lettura del manuale utente del dispositivo.
LAVORARE CON WINDOWS
Windows 7 facilita inoltre l’implementazione di alcuni task
comuni con le vostre finestre aperte semplicemente trascinando le finestre su parti specifiche dello schermo. Per esempio,
trascinando la barra del titolo di una finestra nella parte superiore dello schermo la si massimizzza, mentre trascinando la
barra del titolo di una finestra sul bordo dello schermo si impila verticalmente la finestra in modo che occupi metà dello
schermo, permettendovi di confrontare facilmente i contenuti
di due finestre affiancate.
PRESTAZIONI
Le prestazioni contano. Ogni secondo risparmiato in un
reparto di produzione automatizzato permette di risparmiare
denaro e ogni funzione eseguita più velocemente produce un
collo di bottiglia in meno.
Per vedere come le caratteristiche di Windows 7 hanno effetto sulle applicazioni scritte nell’ambiente di sviluppo grafico NI
LabVIEW, abbiamo eseguito numerosi benchmark di prestazioni, inclusi i seguenti su differenti versioni dei sistemi operativi Windows.
· Benchmark core di LabVIEW
· Benchmark di LabVIEW rivolti al multithreading
· Task fondamentali del sistema operativo
Il sito web Windows Developer Center della Microsoft
Developer Network, Develop for Windows 7, afferma che
Windows 7 migliora le prestazioni di sistema e la gestione
delle risorse.
Inoltre, il blog Engineering Windows 7 afferma che, in termini
di lettura di file dal disco, Windows 7 ha migliorato la logica e
i meccanismi di ‘prefetching’.
Il blog discute numerosi altri miglioramenti, che sono menzionati all’interno di questo articolo.
BENCHMARK CORE DI LABVIEW
I nostri benchmark core di LabVIEW sono consistiti di numerosi task fondamentali inclusi i seguenti:
· I/O di file
· Manipolazioni di array
· Matematica matriciale
· Analisi di funzioni
· Funzioni trigonometriche (si veda il benchmark Savage)
17
TIPS&TECHNIQUES
13
BENCHMARK SUL MULTITHREADING (LABVIEW)
L’importanza del multithreading e delle
tecnologie multicore è aumentata negli
ultimi anni. Con frequenze di clock ormai
al top, i fornitori di hardware stanno
affrontando questo problema aggiungendo altri core ai loro chip processori.
I pacchetti software National Instruments,
come LabVIEW, sfruttano intrinsecamente
queste nuove tecnologie. Per maggiori
informazioni sulla programmazione multicore in LabVIEW, consultate National
Instruments: Multicore Programming Resources.
Abbiamo tracciato le differenze di prestaFigura 1. Benchmark core di LabVIEW (le barre più piccole sono migliori)
zioni fra Windows 7 e Windows XP nelle
nostre applicazioni multithreaded in
LabVIEW. A tale scopo, abbiamo eseguito i seguenti benchIn larga misura, le prestazioni di Windows 7 e Windows XP mark:
sono state paragonabili nella maggior parte delle categorie. · Analisi dello spettro di frequenza – Abbiamo condotto test
in un singolo thread e suddivisi su quattro thread.
Esse sono variate leggermente in pochi casi specifici durante i
· Filtro FIR – Abbiamo condotto test in un singolo thread e
nostri test.
suddivisi su quattro thread.
· Windows XP è stato leggermente più veloce nel calcolo
· Algoritmo Eigenvalue – Abbiamo condotto test in un singodelle manipolazioni di array.
lo thread e suddivisi su quattro thread.
· Windows 7 è stato più veloce nella scrittura di file su disco.
Ciò può essere accaduto a causa dei miglioramenti della In base ai risultati dei nostri test, abbiamo fatto la seguente
osservazione empirica:
logica di prefetching in Windows 7.
· Mediamente, entrambi i sistemi operativi hanno impiegato · Entrambi i sistemi operativi si sono comportati in modo
quasi identico nelle applicazioni di benchmark multithreala stessa quantità di tempo nella lettura da file, benché
ded LabVIEW. Tuttavia, abbiamo visto un incremento di preWindows 7 abbia presentato una deviazione standard più
stazioni del 3 per cento rispetto a Windows XP mentre
elevata.
abbiamo eseguito l’analisi dello spettro di
frequenza su quattro thread.
Questo risultato potrebbe essere dovuto ai
cambiamenti apportati da Microsoft a prestazioni di sistema, utilizzo delle risorse e
blocchi di refactoring per migliorare la scalabilità.
Figura 2. Benchmark sul multithreading di LabVIEW (le barre più piccole sono migliori)
18
TASK FONDAMENTALI DEI SISTEMI
OPERATIVI – AVVIAMENTO, CHIUSURA
E INSTALLAZIONE
Una percezione comune circa la migrazione
a un nuovo sistema operativo è che il prezzo delle caratteristiche è pagato dalle prestazioni di sistema. I nostri test hanno tracciato un profilo di come Windows 7 ha eseguito i task fondamentali del sistema operativo rispetto a Windows XP e Windows
Vista.
Abbiamo confrontato Windows 7 con
TIPS&TECHNIQUES
Inoltre, Microsoft ha fatto sforzi per
fornire un’interfaccia utente e una
barra dei task complessivamente più
responsive, con il suo lavoro su parti
critiche del codice, I/O di registro e
percorsi di codice globali.
AUMENTO DEL THROUGHPUT
CON NI USB DAQ E WINDOWS 7
Microsoft ha investito significativamente nei miglioramenti USB per
Windows 7. Tali miglioramenti, come
l’eliminazione di timer non necessari,
la sospenzione selettiva dell’hub e un
minore tempo di enumerazione per i
dispositivi flash USB, aumentano le
prestazioni dei dispositivi di test e
misura USB. In recenti prove di benchFigura 3. Tempi di installazione, bootup e chiusura (le barre più piccole sono
mark, il nuovo chassis NI
migliori)
CompactDAQ ha ottenuto un aumento del 10 per cento nell’ampiezza di
Windows Vista e Windows XP sulla quantità di tempo richie- banda complessiva raggiungibile con Windows 7, rispetto allo
sta dai differenti sistemi operativi per portare a termine le stesso hardware eseguito su Windows XP. Le prestazioni hardware aumentate, combinate con l’ottimizzazione multicore del
seguenti azioni:
sistema operativo Windows 7 e del software LabVIEW, si sono
· Avviamento:
Da uno stato di spegnimento allo schermo di login. Nessun tradotte in un aumento di prestazioni fino al 20 per cento
durante misure di I/O ad alta velocità o multifunzione.
software addizionale installato. Media su 10 cicli.
· Chiusura:
Da uno stato successivo al login allo stato di
spegnimento completo. Nessun software
addizionale installato. Media su 10 cicli.
· Installazione
RISULTATI DEI TEST
· Le installazioni di Windows 7 e Windows
Vista sono state circa il 36 per cento più
veloci dell’installazione di Windows XP.
· Windows 7 si è consistentemente chiuso il
48 per cento più velocemente in media
rispetto a Windows XP nei nostri test di
benchmark.
Secondo il bog Engineering Windows 7,
ciò può essere dovuto in parte ai seguenFigura 4. Grazie a numerose caratteristiche migliorate, il sistema operativo
Windows 7 OS è un programma affidabile per applicazioni di misura scritte con
ti cambiamenti eseguiti da Microsoft in
il software LabVIEW
Windows 7:
· Riduzione del numero di servizi di sistema
che vengono avviati al bootup e riduzione delle loro richie- MISURE AD ALTE PRESTAZIONI CON PXI EXPRESS E
ste di CPU, disco e memoria. Anche la velocità di bootup MULTICORE
deriva dalla disabilitazione dell’avvio di servizi non necessa- Le misure che richiedono un elevato throughput e prestazioni
veloci stanno spingendo gli ingegneri a usare nuove tecnolori alla partenza di Windows.
· Maggiore parallelismo dell’inizializzazione dei driver. Ciò gie come processori multicore e PXI Express per soddisfare le
diminuisce la probabilità che qualche dispositivo/driver più crescenti domande di velocità. I nuovi dispositivi DAQ X Series
NI supportano nativamente PCI Express e PXI Express, che
lento impatti sul tempo di boot complessivo.
19
TIPS&TECHNIQUES
13
Figura 5. I benchmark eseguiti con NI CompactDAQ hanno rivelato un aumento fino al 20 per cento del throughput di dati su Windows 7
CAPIRE LA DIFFERENZA FRA LE VERSIONI A 32 BIT E A
64 BIT DI WINDOWS 7
Windows 7 è il terzo sistema operativo Microsoft che supporta processori a 64 bit. Anche se le versioni a 32 bit di Windows
continuano a essere le più diffuse e offrono la massima compatibilità nativa con le applicazioni, sono disponibili hardware
e software a 64 bit. Quando si passa a Windows 7, è importante essere consapevoli dei potenziali benefici e delle considerazioni sui 64 bit rispetto ai 32 bit per selezionare la piattaforma appropriata.
La nuova versione a 64 bit di LabVIEW 2009, che può essere
scaricata da ni.com, è la prima versione di LabVIEW che offre
una compatibilità nativa con i sistemi operativi a 64 bit (solo
Vista e Windows 7).
Le applicazioni di misura che sono eseguite nativamente su
hardware e software a 64 bit possono trarre vantaggio da una
maggiore quantità di memoria fisica rispetto ai sistemi a 32
bit, utile per le applicazioni che elaborano grandi quantità di
dati contigui. L’accesso a memoria addizionale può facilmente
incrementare le prestazioni di sistema eliminando la necessità
di swapping dei processi dentro e fuori da file di pagina sui
dischi fissi, che sono molto molto più lenti di memoria e cache
fisiche.
Oltre a una maggiore quantità di memoria fisica, i registri
addizionali su un processore a 64 bit possono incrementare la
velocità di esecuzione delle applicazioni fino al 20 per cento,
in base a come è scritto il codice. Tuttavia, solo il software core
di LabVIEW 2009, l’NI Vision Development Module, e la maggior parte dei driver NI offrono un supporto nativo per una versione a 64 bit di Windows.
Il supporto non nativo per le versioni a 32 bit delle applicazioni è reso possibile da una successiva emulazione nota come
Windows on Windows (WoW); tuttavia, ciò impatta negativamente su velocità di esecuzione e prestazioni.
Le applicazioni di test e misura create per analizzare grandi set
di data, che sono sinonimi di elevato numero di canali ed elevate velocità di campionamento, possono trarre beneficio dal
passaggio a una versione a 64 bit di Windows 7. Tuttavia, la
maggioranza delle applicazioni LabVIEW non trae intrinsecamente beneficio dal passaggio a versioni a 64 bit.
Note sull’autore
Elijah Kerry è Product Manager per LabVIEW in National
Instruments Corporate. Ha occupato in precedenza la posizione
di Product Marketing Engineer per LabVIEW.
20
Readerser vice.it n. 1317
offrono un’ampiezza di banda bidirezionale dedicata fino a
250 MB/s. NI offre anche molti strumenti modulari PXI Express
addizionali per misure ad alta precisione e alta frequenza. Gli
ingegneri possono utilizzare queste tecnologie con Windows
7, che supporta i bus più recenti e migliora il supporto per l’elaborazione multicore per eliminare limitazioni e migliorare il
throughput dei dati delle loro applicazioni di misura.
D A L L A T E O R I A A L L A P R AT I C A
13
SVILUPPO DI UN
ALGORITMO DI CONTROLLO
Giuseppe Battipaglia, Gianfranco Rizzo, Marco Sorrentino, Giovanni Spagnuolo
IN AMBIENTE LABVIEW PER LA GESTIONE
ENERGETICA OTTIMALE DI VEICOLO IBRIDO SOLARE
22
Sono state Implementate strategie di controllo in ambiente CompactRIO per la gestione energetica ottimale di un veicolo ibrido solare (Hybrid Solar Vehicle - HSV ) con configurazione serie
Nell’ottica di sperimentare i vantaggi ottenibili dai veicoli a
basso impatto ambientale soprattutto in ambito urbano,
presso l’Università di Studi di Salerno è stato realizzato un
prototipo HSV, integrando un sistema di pannelli fotovoltaici
ed un gruppo moto/generatore con il veicolo elettrico Porter
Glass Van, prodotto dalla Piaggio.
Per motivi legati sia ad esigenze costruttive che alla possibilità di utilizzare l’ICE prevalentemente in condizioni di massima efficienza, si è optato per lo sviluppo della struttura di
tipo ibrido serie. In questo caso, le ruote sono azionate direttamente dal solo motore elettrico (Electric Motor, EM), che
può funzionare anche da generatore durante le fasi di frenata (frenata rigenerativa). I pannelli solari (Photovoltaic
Panels, PP) ed il sistema motore/generatore (Internal
Combustion Engine/Electric Generator, ICE/EG) concorrono a
ricaricare gli accumulatori (Battery, B), in funzione delle stra-
tegie definite CompactRIO (Vehicle Management Unit,
VMU), elemento cardine di tutta l’architettura.
CompactRIO acquisisce una serie di tensioni dei vari sensori
attraverso il modulo NI 9205 ed invia dei segnali di controllo attraverso il modulo NI 9401 per pilotare dei relè.
Architettura del sistema
Elementi costituitivi dei sistemi di controllo ed acquisizione
dati sono i seguenti:
1.
Rete di sensori e relè;
2.
Sistema di condizionamento (HCS);
3.
CompactRIO;
4.
Sistema di elaborazione.
I veicoli ibridi solari hanno ovviamente molte caratteristiche
in comune con i più convenzionali veicoli ibridi elettrici
(HEV). Tuttavia, l’aggiunta dei pannelli solari e l’adozione di
D A L L A T E O R I A A L L A P R AT I C A
una struttura propulsiva di tipo serie suggeriscono l’importanza di eseguire uno studio accurato dei flussi energetici a
bordo del veicolo finalizzato alla determinazione delle strategie di controllo ottimali.
In realtà, in molti veicoli ibridi viene adottata una strategia
di gestione energetica di tipo ‘charge-sustaining’: in pratica
viene garantito che alla fine di ogni ciclo di guida lo stato di
carica delle batterie risulti invariato rispetto alla condizione
di partenza. Nel caso del veicolo ibrido solare, è stata invece
implementata una strategia che permette la ricarica del
pacco batterie anche nelle fasi di sosta. In questo caso l’obiettivo ‘charge sustaining’ viene garantito lungo l’intero
arco della giornata invece che alla fine di un singolo percorso compiuto dal veicolo.
La configurazione serie consente inoltre un utilizzo intermittente del motore a combustione interna, in particolare a
punto fisso ed in condizioni di massima efficienza. In questo
caso è quindi possibile privilegiare, nella fase di progettazione del motore endotermico, l’abbattimento delle emissioni e
del rumore in corrispondenza del punto di massima efficienza. Quest’ultima opportunità costituisce un indubbio vantaggio rispetto a quanto accade per le vetture tradizionali, dove
la massima efficienza di conversione viene sacrificata a vantaggio del raggiungimento di prestazioni ed emissioni accettabili nell’intero dominio di funzionamento. Nel caso di funzionamento intermittente è importante anche tener conto
dell’effetto che i transitori termici del motore e del catalizzatore hanno su consumi ed emissioni.
Rete di sensori e relè
Sonde per la misura di corrente e tensione sui seguenti componenti: B, EG, EM, PP
Sonda di temperatura
Sonde potenziometriche dei pedali (acceleratore e freno)
Box di lettura del numero di giri (EM ed EG)
Box di condizionamento del torsiometro (coppia sull’asse
dell’EM)
Piranometro (per la misura del soleggiamento per unità di
superficie)
Box ausiliario contenente tre relè:
•
RL1: Utilizzato per il accensione/spegnimento del
sistema di areazione.
•
RL2-RL3: Utilizzati rispettivamente per il l’accensione/spegnimento dell’EM/EG
Sistema di condizionamento (HCS)
HCS è un sistema sperimentale di condizionamento dei
segnali appositamente progettato per l’Università di Salerno
per l’installazione sul veicolo ibrido HSV.
Il sistema HCS è in grado di condizionare tutti i sensori per il
monitoraggio delle condizioni operative del veicolo e si connette al modulo CompactRIO.
Grazie alla sua affidabilità e al fatto di essere una piattaforma adatta per applicazioni embedded di misura e controllo,
CompactRIO è impiegato nell’HSV per eseguire operazioni
di:
•
Acquisizione dati;
•
Data-logging embedded;
•
Controllo a bordo veicolo (Azionamento dei vari
relè).
Sistema di elaborazione
L’applicazione, sviluppata in LabVIEW, si compone di una
serie di funzioni.
Acquisizione: ove vengono acquisiti i dati relativi ai vari trasduttori installati sul veicolo ibrido;
Adattamento: qui vengono eseguite operazioni di taratura
sui dati acquisiti;
23
D A L L A T E O R I A A L L A P R AT I C A
13
stibile e di una gestione charge-sustaining giornaliera
della batteria.
Sicurezza: attraverso i sensori di temperatura e relè connessi al sistema di areazione è possibile eseguire una
logica di sicurezza capace di risolvere i problemi termici
(rumore di misura, riscaldamento vano motore, ecc.).
Trasmissione su un Server FTP: i dati acquisiti vengono
trasmessi su un Server Web in cui è presente uno script
capace di rappresentarli graficamente con una frequenza
di aggiornamento pari a 1Hz.
Trasmissione su un Server Smtp: i dati acquisiti vengono
trasmessi su un Server di Posta in cui sarà possibile accedere per eseguire operazioni di Data Mining.
Charge sustaining: questo tipo di controllo mantiene il
livello di carica (state of charge-SOC) fra due valori limite. Quando questo livello scende al di sotto del limite
inferiore, viene messo in moto il sistema ICE/EG (attraverso l’azionamento del relè corrispondente), provvedendo alla ricarica delle batterie. Viceversa quando il livello
sale oltre il limite superiore, viene spento l’ICE/EG (attraverso l’azionamento di un secondo relè).
Le soglie di accensione/spegnimento sono determinate
attraverso metodologie di ottimizzazione vincolata finalizzate all’ottenimento del massimo risparmio di combu-
24
Note sugli autori
Giuseppe Battipaglia, laureando presso l’Università degli Studi di
Salerno, Dipartimento di Ingegneria Meccanica (Dimec); Gianfranco
Rizzo, professore ordinario presso l’Università degli Studi di
Salerno, Dipartimento di Ingegneria Meccanica (Dimec); Marco
Sorrentino, assegnista di ricerca presso l’Università degli Studi di
Salerno, Dipartimento di Ingegneria dell’Informazione e
dell’Ingegneria Elettrica (Diie); Giovanni Spagnuolo, professore
associato presso l’Università degli Studi di Salerno, Dipartimento di
Ingegneria dell’Informazione e dell’Ingegneria Elettrica (Diie)
Readerser vice.it n. 1318
Archiviazione: dopo un’opportuna formattazione i dati
acquisiti vengono salvati su file, per operazioni di Data
Mining.
Test sperimentali
Nella figura 3 sono riportati i segnali acquisiti durante un
test sperimentale preliminare, eseguito il 19 dicembre
2008. Nel test si è adottata una strategia di gestione del
sistema ICE/EG di tipo manuale, alternando fasi di accensione e spegnimento [i.e. figure 3 (a)]. Si noti come il
sistema di acquisizione consenta di apprezzare l’effetto di
tali manovre sullo stato di carica della batteria, valutato
attraverso uno stimatore implementato in LabVIEW [cfr. figura 3
(b) e (c)]. La figura 3 (e) mostra
invece come nelle fasi di frenata
[i.e. rilascio del pedale, la cui
posizione è rappresentata nella
figura 3 (d)] il motore elettrico
eserciti una coppia frenante
(quindi negativa) di circa 25 Nm,
permettendo quindi una ricarica
mediante frenata rigenerativa di
circa 3kW. Per quanto riguarda il
contributo dei PP alla ricarica
delle batterie, il relativo grafico è
stato omesso in quanto la potenza erogata si attesta su valori
pressoché costanti, peraltro
molto bassi a causa dello scarso
soleggiamento caratterizzante i
mesi invernali.
D A L L A T E O R I A A L L A P R AT I C A
13
OPTOELETTRONICI
FERROVIARI
SISTEMI
PER PORTALI MULTIFUNZIONE
Luc a Fumagalli, Giorgio Libretti, Paolo Tomassini, Marco Trebeschi, Marco Zanatta
Progetto, realizzazione e messa in opera di sistemi di rilievo sagoma, termico e visibile per
il monitoraggio di treni in transito, unitamente al software per il controllo dei sensori, l'acquisizione dei dati e l'emissione degli allarmi
Grazie al suo know-how nella progettazione di sistemi ottici e
optoelettronici e nello sfruttamento delle potenzialità offerte
dai prodotti hardware e software National Instruments, QTech ha portato a buon esito la realizzazione e messa in opera
della strumentazione optoelettronica e del software di acquisizione ed elaborazione dati per due portali multifunzione
installati sulla Rete Ferroviaria Italiana.
L’azienda è uno dei partner nell'ambito di un progetto (avviato da Rete Ferroviaria Italiana) di sviluppo di portali multifunzione per il monitoraggio in tempo reale delle condizioni di
sicurezza di convogli in transito. Lo scopo dei portali è l'emissione di opportuni allarmi nel caso vengano rilevate anomalie
nel transito di un treno, al fine di prevenire eventuali incidenti
in galleria. I sistemi sviluppati da Q-Tech acquisiscono ed elaborano dati provenienti da sensoristica optoelettronica, per-
mettendo il rilievo dell'immagine 2-D dei treni in transito, dei
profili 3-D dei treni al fine di rilevare la presenza di eventuali
allarmi di sagoma e delle temperature dei treni con lo scopo
di rilevare eventuali zone surriscaldate. Il primo Portale
Multifunzione sperimentale è installato tra Bologna e Prato,
mentre il secondo sistema è installato sulla linea NapoliRoma.
IL PROGETTO
Q-Tech è una moderna società di progettazione, servizi e consulenza nel campo dei sistemi laser, dell'ottica e optoelettronica. Fondata da ingegneri che hanno operato all'interno delle
strutture di ricerca dell'Università di Brescia e cresciuta nel
vivaio degli Spin-Off dell'Istituto Nazionale di Fisica della
Materia, Q-Tech è oggi una realtà consolidata e significativa
25
D A L L A T E O R I A A L L A P R AT I C A
13
Figura 1: Transito di un treno sotto il Por tale Multifunzione
nei settori di sua competenza. Negli ultimi anni l’azienda ha
partecipato, su commessa di Sirti, al progetto e alla realizzazione di sistemi multisensore per il monitoraggio in tempo
reale del profilo tridimensionale di sagoma, del profilo di temperatura e dell’immagine visiva di convogli ferroviari in transito ad elevata velocità prima dell’ingresso in gallerie (fig. 1).
Tali sistemi devono segnalare, mediante opportuni allarmi,
eventuali anomalie di transito dei convogli dovute al superamento di precisi profili di riferimento (fissati dalla normativa
internazionale) o al superamento di soglie di temperatura predefinite (variabili a seconda dei rotabili).
Tra gli aspetti maggiormente critici dell’intero progetto si
possono citare le problematiche di gestione e di elaborazione dell’enorme mole di dati provenienti dai sensori. I sistemi, infatti, devono rilevare i treni in transito fino ad una
velocità di 300 km/h, ed eventuali situazioni di allarme
devono essere segnalate entro 90 secondi dal termine del
transito del convoglio.
Figura 2: Acquisizione di una locomotrice effettuata dai sistemi di Rilievo
Immagini (a) e di Rilievo Termico (b,c)
26
ARCHITETTURA
Per tutti i sistemi si è utilizzata un’architettura basata su PC
industriale. Gli applicativi per la gestione dei sensori e per
l’acquisizione e l’elaborazione dei dati sono stati realizzati
in ambiente LabVIEW servendosi, ove necessario, di hardware di acquisizione dati DAQ analogico/digitale; l’utilizzo
del modulo LabVIEW FPGA e di hardware di I/O riconfigurabile ha reso possibile la creazione di funzionalità personalizzate per l’elaborazione di segnali veloci; i moduli
Compact FieldPoint hanno permesso il controllo a basso
livello dei sensori.
Tutti i sistemi hanno una base dei tempi comune, dettata
da un sistema di sincronizzazione, anch’esso sviluppato da
Q-Tech, che rileva il transito degli assi del convoglio su
pedali posti in corrispondenza a punti di riferimento noti;
tale sistema inoltre acquisisce i dati relativi alle discontinuità tra i rotabili che compongono il convoglio e rileva
l’eventuale transito concomitante di un treno sul binario
opposto.
Un sistema di rilievo immagini effettua la ripresa del convoglio in transito servendosi di telecamere line-scan. La frequenza di acquisizione delle telecamere è calcolata in base
alla velocità del treno, in modo da mantenere inalterata la
spaziatura tra profili successivi rispetto a quella prevista fra
punti adiacenti nello stesso profilo. La fig. 2(a) mostra un
esempio di acquisizione di una locomotrice effettuata dalla
telecamera superiore sinistra.
IL RILIEVO TERMICO
Il rilievo termico viene effettuato utilizzando termocamere
lineari piroelettriche commerciali. Per ciascun Portale sono
installati più sistemi, al fine di rilevare sia le parti alte dei
convogli sia le zone in corrispondenza delle ruote; in particolare, per l’acquisizione delle zone basse dei rotabili le termocamere possono essere installate ai lati
del portale oppure sotto il piano del ferro,
all’interno di una traversina cava opportunamente predisposta. Le figg. 2(b) e 2(c)
mostrano le acquisizioni effettuate rispettivamente dalla termocamera superiore sinistra e
dalla termocamera inferiore posta sul lato
sinistro del Portale. Ciascun sistema di rilievo
termico acquisisce contemporaneamente i
dati provenienti da due termocamere, una
relativa al lato destro e una relativa al lato
sinistro (alto o basso) del convoglio. Partendo
dai dati acquisiti vengono effettuate quattro
diverse verifiche termiche:
verifica termica di incendio a bordo: viene
effettuato il confronto con una temperatura
massima di riferimento;
- verifica termica di temperatura massima
rotabile: viene effettuato il confronto con una
D A L L A T E O R I A A L L A P R AT I C A
Figura 3: Acquisizione della sezione della locomotrice evidenziata in Figura 2(a) effettuata dal sistema di Rilievo Sagoma
temperatura massima di riferimento prestabilita per ciascun
rotabile in transito;
- verifica termica boccole: viene effettuato una stima della
temperatura di ogni boccola e il confronto con una temperatura di riferimento (solo per i sistemi relativi alle zone
basse dei rotabili);
- verifica termica regioni di interesse con griglia: ciascun
rotabile è suddiviso utilizzando una griglia; ad ogni cella
della griglia corrisponde una specifica temperatura di riferi-
Ciascun sistema di rilievo sagoma acquisisce contemporaneamente i dati provenienti dai due telemetri, uno relativo al lato
destro e uno relativo al lato sinistro del convoglio; la frequenza di scansione giunge fino a 700 sezioni trasversali del treno
per secondo; ogni sezione trasversale contiene almeno 512
punti di misura. L'acquisizione della sezione trasversale della
locomotrice evidenziata dalla linea rossa in fig. 2(a) è mostrata in fig. 3. La nuvola di punti dell'intera locomotrice ottenuta
giustapponendo tutte le sezioni trasversali acquisite dal sistema è mostrata in fig. 4: in essa i dati del sistema di rilievo
sagoma sono combinati con le informazioni acquisite dalle
telecamere nel visibile.
Partendo dalle sezioni trasversali acquisite, possono essere
effettuate sette diverse verifiche di sagoma:
- due verifiche statiche: vengono effettuati confronti con le
sagome di riferimento italiana e internazionale;
- cinque verifiche cinematiche: vengono effettuati confronti con sagome cinematiche ottenute calcolando opportuni
coefficienti di riduzione e applicandoli ai profili di riferimento statici.
CONCLUSIONE
I sistemi sviluppati da Q-Tech per conto di Sirti sono attualmente installati su due diversi portali multifunzione, commissionati da Rete Ferroviaria Italiana. In particolare nel caso del
primo portale, realizzato sulla linea Bologna-Prato, vengono
mento; per ogni cella della griglia viene quindi effettuata
una stima della temperatura e il confronto con la specifica
temperatura di riferimento.
IL RILIEVO SAGOMA
I sistemi di rilievo sagoma sono equipaggiati con sensori di
sagoma full-custom sviluppati da Q-Tech. In particolare, il portale situato sulla linea Roma-Napoli utilizza nuovi telemetri a
tempo di volo per misurazioni distribuite sviluppati da Q-Tech.
fornite informazioni utili per la valutazione del livello di sicurezza dei treni in transito su uno dei due binari della linea,
mentre il secondo portale, installato tra Napoli e Roma, prevede il monitoraggio di ambedue i binari della linea.
Note sugli autori
Luca Fumagalli, Amministratore Delegato di Q-Tech; Paolo Tomassini,
Presidente di Q-Tech; Giorgio Libretti e Marco Trebeschi, reparto R&S di
Q-Tech; Marco Zanatta, collaboratore di Q-Tech
Readerser vice.it n. 1313
Figura 4: Nuvola di punti della locomotrice ottenuta combinando i dati acquisiti dal sistema di Rilievo Sagoma e dal sistema di
Rilievo Immagini
27
D A L L A T E O R I A A L L A P R AT I C A
13
STAFFETTA
AUTONOMI
UNA
TRA DUE MUSEI CON ROBOT
Manuela Carastro, David Sc aradozzi
Per spiegare a ragazzi dai 6 ai 17 anni la differenza tra robot autonomo e teleguidato e le
difficoltà di un controllo remoto sono stati costruiti tre robot a intelligenza distribuita
L'articolo presenta l'esperienza maturata nello sviluppo di
un'arena per staffetta robotica educativa presentata all'interno della manifestazione ‘Futuro Remoto’, organizzata da Città
della Scienza di Napoli. Lo scenario ha visto la collaborazione
dei musei Città della Scienza e Technotown, le Università
Politecnica delle Marche e Roma Tre, National Instruments e la
Scuola di Robotica di Genova in un riuscito esempio di integrazione tra didattica museale e divulgazione scientifica.
L’obiettivo della collaborazione è stato quello di verificare con
questo progetto-pilota se sia possibile realizzare una rete
scientifico-museale che possa coinvolgere più strutture in un
28
panorama museale nazionale integrato.
Anche se la rassegna di robotica Futuro Remoto 2009, che si
è svolta a Napoli dal 19 novembre all’8 dicembre 2009, ha
rappresentato un utile banco di prova di questo progetto
comunque limitato nel tempo, le due strutture museali coinvolte, nel contesto italiano uniche nel loro genere, potranno
beneficiare della reciproca cassa di risonanza e fidelizzare il
loro pubblico, offrendo un collegamento ideale, sia reale che
virtuale, anche al di fuori dei confini regionali.
La manifestazione multimediale di diffusione della cultura
scientifica e tecnologica Futuro Remoto 2009 – Robot e altre
D A L L A T E O R I A A L L A P R AT I C A
storie, è un evento promosso dall’Assessorato alle Attività
Produttive delle Regione Campania e della Fondazione Idis Città della Scienza.
IL CONTESTO
Prima di descrivere il progetto ‘Staffetta robotica. Da Napoli a
Roma, musei a controllo remoto’, è utile richiamare il concetto di science center, per poter chiarire il contesto in cui il progetto si sviluppa. Luigi Amodio (2005) indica tre elementi,
innovazioni, che caratterizzano queste realtà rispetto ai musei
tradizionali:
- la prima innovazione, nei contenuti, è la dichiarata intenzione di costituirsi come luoghi aperti di incontro tra i soggetti e i luoghi in cui la scienza e la tecnologia vengono prodotte e la società;
- la seconda innovazione, riguardante le modalità di comunicazione, è l’impostazione fortemente interattiva dell’offerta
espositiva, un’offerta che richiede esplicitamente ai visitatori di ‘mettere le mani’ sugli oggetti esposti, stabilendo con
questi ultimi un rapporto diretto di sperimentazione. In questa prospettiva, la libertà, da parte di chi apprende, di misurarsi con i fenomeni, produrli, sviluppare inferenze, è massimizzata; mentre il ruolo di chi detiene le conoscenze assomiglia sempre di più a quello di un ‘facilitatore’ che non a
quello di chi insegna, nel senso tradizionale del termine;
- la terza innovazione, relativa al posizionamento di mercato,
è la collocazione dei science center in una terra di mezzo tra
educazione e informazione da un lato e intrattenimento
dall’altro.
Technotown, un museo della scienza per ragazzi, aperto anche
ai loro accompagnatori adulti, e Città della Scienza di Napoli,
rappresentano il senso della seconda innovazione proposta da
Amodio. I laboratori di robotica educativa promossi da
Technotown e la sua partecipazione alla rassegna Futuro
Remoto sono un esempio delle attività realizzate dalla struttura in ambito robotico. L’interazione con i robot rappresenta
l’elemento centrale del processo di didattica interattiva in questo ambito.
REALIZZAZIONE DELL'IDEA
Nel progetto ‘Staffetta museale. Da Napoli a Roma, musei a
controllo remoto’ abbiamo voluto realizzare una sinergia
all'interno di una rete nazionale di collaborazioni già avviate
da anni tra diverse competenze in ambito educativo e di progettazione robotica. Le indicazioni date riguardo ai messaggi
educativi da Technotown e Città della Scienza, il concorso per
le idee di costruzione dei ragazzi delle medie organizzato dalla
Scuola di Robotica di Genova in presentazione e preparazione
dell'evento, la progettazione con strumenti altamente modulari e di prototipazione rapida quali LabVIEW e il sistema LEGO
NXT conosciuti e usati dai dipartimenti di ricerca DIIGA –
Università Politecnica delle Marche ed il Dipartimento di
Informatica e Automazione - Università Roma Tre (Prof.
Panzieri) e l'utile apporto e supporto all'innovazione portato
da National Instruments Italy, hanno trasformato la progettazione meccatronica dei robot in un utile esempio di sinergia
per la creazione di strumenti innovativi e di divulgazione scientifica allo stesso tempo.
L'applicazione realizzata consiste in un'arena (fig. 1) in cui tre
robot identificati con le sigle NXT1, NXT2 e NXT3 partecipavano ad una staffetta robotica.
Figura1: Vista dell’arena
I 3 robot della staffetta hanno intelligenze diverse che risiedono in diversi sistemi di calcolo. Tutti e tre i robot hanno due differenti unità di calcolo a bordo: NXT1, il più autonomo, è composto da una Smart Camera e un blocchetto programmabile
LEGO NXT, mentre gli altri due robot hanno intelligenza distribuita tra il blocchetto programmabile NXT e un PC collegato
via Bluetooth.
Tutti e 3 i robot hanno nel blocchetto LEGO NXT l’intelligenza
di basso livello che si occupa del movimento e della gestione
dei sensori di tatto (simboleggiano per i ragazzi i neuroni periferici di un essere umano che si trovano lungo la spina dorsale e che fanno riferimento a delle aree specifiche del nostro
cervello). Il compito dell’intelligenza che risiede nei blocchi
programmabili NXT è quello di reagire agli stimoli di tatto e di
controllare i motori in potenza, sterzata e numero di giri.
L’intelligenza di basso livello degli NXT è stata realizzata in
LabVIEW e cross-compilata per il microprocessore ARM7 degli
NXT mediante il Toolkit per NXT di National Instruments.
Le intelligenze di alto livello che hanno il compito di gestire la
Navigazione, Guida e Controllo dei robot sono state realizzate in LabVIEW ed eseguite dalla Smart Camera NI 1762, per
quanto riguarda NXT1; su un PC di Roma per quanto riguarda NXT2; su un PC di Napoli per quanto riguarda NXT3. Le
29
D A L L A T E O R I A A L L A P R AT I C A
13
Figura 3: Struttura di NXT2 e NXT3
NI 1762 Smart Camera, dotata di processore PowerPC a 533
MHz e coprocessore DSP a 720 MHz Texas Instruments, è un
target real-time per applicazioni di visione industriale. Il sensore immagini CCD Sony ad elevata qualità è in grado di
acquisire immagini monocromatiche a risoluzione VGA (640 x
480) a 60 fotogrammi al secondo. Il coprocessore DSP offre
migliori prestazioni (fino a 4X) per il riconoscimento ottico del
carattere, pattern matching e lettura della scena. Gli I/O della
telecamera includono due input e due output digitali optoisolati, una porta seriale RS232 e due porte Ethernet gigabit. NI
1762 include anche supporto encoder in quadratura e un controller di corrente per illuminazione fino a 500 mA continui o
1 A impulsati. Il riconoscimento di NXT2 da parte di NXT1
avviene grazie agli algoritmi di visione artificiale realizzati in
LabVIEW all’Università degli Studi Roma Tre, mentre l’interfaccia in LabVIEW per il controllo remoto della locomozione del
robot è stata realizzata dall’Università Politecnica delle
Marche.
Note sulgli autore
Figura 2: Struttura di NXT1
30
Manuela Carastro, Technotown; David Scaradozzi, Università
Politecnica delle Marche
Readerser vice.it n. 1314
comunicazioni tra le intelligenze di alto livello e quelle di basso
livello avvengono con protocollo seriale ma per mezzo di sistemi di comunicazione differenti nel caso di NXT1 e NXT2 /3.
NXT2 e NXT3 comunicano con i PC dove risiede l’intelligenza
mediante protocollo Bluetooth. L’intelligenza di alto livello di
NXT2 e NXT3 è composta da due applicazioni che comunicano tra loro via UDP/IP: un protocollo che può viaggiare sulla
rete web e che ha la caratteristica di essere veloce e robusto.
Rispettivamente le due applicazioni in esecuzione sul PC sono
realizzate in MaxMSP e LabVIEW e si occupano di riconoscere il comportamento dei ragazzi davanti alla telecamera e di
tradurlo in comandi di movimento per il robot.
MaxMSP è un ambiente grafico di programmazione nato e sviluppato in ambiente musicale, audio e multimediale in genere. Viene usato da più di 15 anni da musicisti, compositori, artisti, insegnanti e studenti, ed è di fatto diventato uno standard
per la creatività tecnologicamente evoluta in ambito musicale
e visivo.
Gli algoritmi di visione artificiale realizzati in MaxMSP sono
stati realizzati dal gruppo Technotown mentre l’interfaccia in
LabVIEW per il controllo remoto della locomozione dei robot è
stata realizzata dal gruppo dell’Università Politecnica delle
Marche.
L’intelligenza di alto livello di NXT1 risiede in un dispositivo
SmartCamera NI 1762 che comunica con il blocchetto intelligente LEGO NXT mediante un’interfaccia RS232-RS485 realizzata, assieme ai sui driver per NXT, dall’Università
Politecnica delle Marche.
EVENTI
13
DA GENNAIO 2010
LA
FORMAZIONE
È PIÙ RAPIDA ED EFFICACE
agli esami di certificazione Associate
Developer e Developer . Per chi desidera
avere competenze di design di alto livello
e capacità di gestione di grossi progetti,
sono disponibili i nuovi corsi ‘LabVIEW
Advanced Architectures’ e ‘Managing software Engineering in LabVIEW’, propedeutici al conseguimento della certificazione
Architect ed indirizzati a project Manager
e/o system Engineer. I corsi ‘LabVIEW
Connectivity’ e ‘LabVIEW Object Oriented
Programming’ permettono infine di integrare tecnologie quali comunicazione
TCP/IP, DLL, ActiveX, .NET e tecniche di
programmazione ad oggetti. Grazie alla
nuova struttura formativa vengono offerti i
seguenti benefici:
- Tempi più rapidi d’apprendimento e ridu-
zione dei costi globali di sviluppo
- Definizione di percorsi formativi più chiari, flessibili e modulari.
- Maggiore allineamento con il programma di Certificazione. La formazione NI può
diventare un efficiente alleato lungo tutto
il processo produttivo permettendo di conseguire gli obiettivi con successo. Per maggiori informazioni si può consultare il sito
www.ni.com/training/i o contattare direttamente National Instruments (telefono:
02/41309217 o e-mail:
[email protected]).
Note sull’autore
Luigi Brocchi è Customer Education
Manager di National Instruments Italy
Readerser vice.it n. 1384
C
on il rilascio dei nuovi corsi Core 1, 2
e 3, che sostituiscono i corsi base ed
intermedi, si sono voluti ridistribuire i
contenuti didattici per permettere un più
rapido ed efficace metodo d’apprendimento. In soli 5 o 6 giorni una persona può
diventare capace di sviluppare applicazioni di acquisizione dati, di controllo deterministico Real-Time o di programmazione
di target Fpga. Il corso Core 1, infatti, è l’unico prerequisito per poi accedere alla formazione specifica dell’hardware o modulo
d’interesse. I successivi corsi Core 2 e Core
3 aiutano ad ottenere livelli di competenze di medio e alto livello nello sviluppo
software professionale, insegnando l’uso
delle architetture più comuni ed offrendo
una formazione allineata e propedeutica
A cura di Luigi Brocchi
National Instruments annuncia il rilascio del nuovo percorso formativo mirato a fissare gli
attuali e futuri standard di competenze in LabVIEW
ANNO NUOVO…NUOVE ABITUDINI:
I SEMINARI
ONLINE!
massimo l’offerta di contenuti multimediali, riproponendoli ben due volte in una
stessa settimana. Nei mesi di gennaio e
febbraio, Il Mese dei Webcast live ha proposto ben dieci titoli su diversi temi: dal
software, all’acquisizione dati, dal monitoraggio al test fino a robotica e meccatronica.
Ogni seminario è stato proposto in due
occasioni, il martedì e il giovedì, in due
fasce orarie diverse: la mattina alle 10:30
e il pomeriggio alle 15:30. Cinque settimane e venti appuntamenti con gli ingegneri di National Instruments e dei suoi
Partner. Ogni webcast ha avuto una dura-
ta approssimativa di venti minuti e i tecnici di National Instruments sono rimasti
collegati in chat per rispondere alle
domande dei partecipanti. La sessione di
domande e risposte si è protratta per 30
minuti oltre la fine del seminario.
All’evento si sono registrati circa 400 partecipanti, questo a testimonianza del
grande interesse sui nuovi tool multimediali a nostra disposizione per veicolare
informazioni e competenze. Rimanete
sintonizzati su ni.com/it per scoprire quale sarà il prossimo seminario online e
guardate le presentazioni ancora disponibili su www.webcast.labview.it!
Readerser vice.it n. 1390
L
a nuova frontiera della comunicazione multimediale è rappresentata
dalla possibilità di offrire e frequentare seminari dal vivo e presentazioni on
demand alle quali i destinatari possono
accedere in tempo reale, senza complicati download di software. Perché? Perché
abbiamo sempre meno tempo a disposizione; e per spostarci fisicamente da un
luogo ad un altro, e per collegarci alla
piattaforma di riferimento. Per questo
motivo, con l’evento multimediale Il Mese
dei Webcast live, National Instruments ha
cercato di semplificare le modalità di partecipazione all’evento e di diversificare al
Nadia Albarello
Nasce l’evento multimediale ‘Il Mese dei Webcast live’
31
SCUOLA DI LABVIEW
13
Training per principianti
MEMORIZZAZIONE
DEI DATI DI MISURA
A cura di Alessandro Plantamura
In questa sezione vedremo come memorizzare dati in un file
C
on LabVIEW è possibile acquisire dati, eseguire elaborazione di dati e visualizzarli nel pannello frontale. Anche la
memorizzazione dei dati è solitamente una parte molto
importante di ogni progetto.
A. APPRENDERE IL FILE I/O
Il file I/O registra o legge i dati in un file.
Una tipica operazione di file I/O coinvolge i seguenti processi.
1. Si crea o apre un file. Una volta aperto il file, esso sarà rappresentato da un numero di riferimento chiamato refnum. Un
‘numero di riferimento’ (refnum) è una struttura utilizzata per
identificare e recuperare alcune operazioni che son state eseguite all’interno di LabVIEW. Fate riferimento all’argomento
Building the Front Panel del LabVIEW Help per maggiori informazioni sui refnum.
2. Il VI o la funzione File I/O legge o scrive sul file.
3. Si chiude il file.
Figura 1. Passaggi di una tipica operazione di file I/O
FORMATI DEI FILE
LabVIEW puo usare o creare i seguenti formati di file: Binario,
Ascii, LVM e TDM.
• Binario—I file binari sono il formato di file base per tutti gli
altri formati di file.
• Ascii—Un file Ascii è un tipo specifico di file ed è uno standard usato dalla maggior parte dei programmi. Consiste in
una serie di codici Ascii. I file Ascii sono anche chiamati file di
testo.
• LVM—Il file dei dati di misura in LabVIEW (.lvm) è un file di
testo delimitato da tab che potete aprire con un’applicazione
tipo foglio di calcolo o di scrittura e modifica testo. Il file .lvm
include informazioni sui dati, quali la data e l’ora in cui i dati
32
sono stati generati. Questo formato di file è un tipo specifico
di file Ascii creato per LabVIEW.
• Tdms—Questo formato di file è un tipo specifico di file
binario creato per i prodotti National Instruments. Esso consiste in realtà di due diversi file—un file binario che contiene i
dati e le proprietà dei dati e un file binario di indice che fornisce informazioni consolidate su tutti gli attributi e puntatori
nel file binario. In questa lezione vedremo come creare file di
testo (Ascii). Si possono usare i file di testo quando sarà necessario accedere ai file da un’altra applicazione, se lo spazio sul
disco e la velocita del file I/O non sono cruciali, se non c’è bisogno di effettuare letture e scritture ad accesso casuale e se la
precisione numerica non è importante.
LABVIEW DATA DIRECTORY
E’ possibile usare la directory di default LabVIEW Data per
conservare i file che LabVIEW genera, come file .lvm o .txt.
LabVIEW installa la directory LabVIEW Data nella directory
assegnata per i file del vostro sistema operativo, per aiutarvi a
organizzare e localizzare i file che LabVIEW genera. Di default,
l’Express VI ‘Write LabVIEW Measurement File’ memorizza i
file .lvm che genera in questa directory, così come l’Express VI
‘Read LabVIEW Measurement File’ legge i dati dalla stessa
directory. La costante Default Data Directory e la proprietà
Default Data Directory restituiscono anch’esse la directory
LabVIEW Data di default.
Selezionate Tools”Options e poi Paths dall’elenco
Category per specificare una diversa directory di default dei
dati. La directory di default dei dati differisce dalla directory di
default che voi specificate per salvare i nuovi VI, i controlli personalizzati, i VI template o altri documenti LabVIEW che create.
B. CARATTERISTICHE DEI FILE DI I/O DI ALTO LIVELLO
Alcuni VI di File I/O possono effettuare tutti e tre i passaggi di
un processo di I/O—aprire, leggere/scrivere e chiudere il file.
Se un VI effettua tutti e tre i passaggi è considerato un VI di
alto livello. Per quanto semplici da utilizzare, i VI di alto livello possono non essere altrettanto efficienti quanto i VI e le
SCUOLA DI LABVIEW
funzioni di basso livello, progettati per effettuare singole parti
del processo di File I/O. Ad esempio, se state scrivendo su un
file in un ciclo, usate i VI di basso livello. Se state scrivendo su
un file in un’operazione singola, potete invece usare i VI File
I/O di alto livello.
LabVIEW include i seguenti VI File I/O di alto livello:
• Write to Spreadsheet File—Converte array 2D o 1D di
numeri a doppia precisione in una stringa di testo e scrive la
stringa su un nuovo file Ascii o la allega ad un file esistente.
Potete anche trasporre i dati.
Il VI apre o crea il file prima di scriverlo e lo chiude al termine
del processo di lettura/scrittura. Potete usare questo VI per
creare un testo leggibile dalla maggior parte delle applicazioni di gestione di fogli elettronici.
• Read From Spreadsheet File—Legge un numero di linee
o righe specificato da un file di testo numerico a partire da uno
specifico offset di caratteri e converte i dati in un array 2D di
numeri a doppia precisione.
Il VI apre il file prima di leggerlo e lo chiude dopo. Potete usare
questo VI per leggere file di fogli elettronici salvati in formato
testuale.
• Write to Measurement File—Un Express VI che scrive i
dati di misura in formato testuale (.lvm) o binario (.tdms).
Potete specificare il metodo di memorizzazione, il formato del
file (.lvm o .tdms), il tipo di intestazione e il delimitatore.
• Read from Measurement File—Un Express VI che legge
i dati di misura in formato testuale (.lvm) o binario (.tdms).
Potete specificare il nome del file, il formato del file e la dimensione del segmento.
Suggerimento: Evitate di inserire VI di alto livello in cicli, perché i VI effettuano operazioni di apertura e chiusura ogni volta
che vengono mandati in esecuzione.
Figura 2. VI File I/O di alto livello
C. CARATTERISTICHE DEI FILE DI I/O DI BASSO
LIVELLO
I VI e le funzioni File I/O di basso livello effettuano ognuno solo
un pezzo del processo di file I/O. Per esempio, esistono una
funzione dedicata che apre un file Ascii, una funzione che
legge da file Ascii e una funzione che chiude il file Ascii. Usate
funzioni di basso livello quando il file I/O avviene all’interno di
un ciclo.
Figura 3. VI File I/O di basso livello
STREAMING SU DISCO CON FUNZIONI DI BASSO
LIVELLO
Potete usare le funzioni File I/O di basso livello per operazioni
di streaming su disco, che fanno risparmiare risorse di memoria riducendo il numero di volte che la funzione interagisce col
sistema operativo per aprire e chiudere il file. Lo streaming su
disco è una tecnica per mantenere aperti i file mentre effettuate piu operazioni di scrittura, per esempio, in un ciclo.
Fate riferimento al VI Write Datalog File Example in labview\examples\file\datalog.llb per studiare un esempio di uso
di VI File I/O per operazioni di streaming su disco.
Collegando un controllo path o una costante alla funzione
Write to Text File, alla funzione Write to Binary File o al
VI Write To Spreadsheet File si effettua l’apertura e chiusura del file ogni volta che la funzione o il VI va in esecuzione.
I VI possono essere più efficienti se evitate di aprire e chiudere gli stessi file frequentemente.
Per evitare di aprire e chiudere lo stesso file, dovete passare un
refnum al file nel ciclo. Quando aprite un file, un dispositivo o
una connessione di rete, LabVIEW crea un refnum associato a
quel file, dispositivo o connessione di rete. Tutte le operazioni
che effettuate per aprire file, dispositivi o connessioni di rete
usano i refnum per identificare ogni oggetto.
Gli esempi nelle figure 4 e 5 mostrano i vantaggi dell’uso dello
33
SCUOLA DI LABVIEW
13
streaming su disco. Nella figura 4, il VI deve aprire e chiudere
il file durante ogni iterazione del ciclo. La figura 5 usa lo streaming su disco per ridurre il numero di volte che il VI deve interagire con il sistema operativo per aprire e chiudere il file.
Aprendo il file una volta prima che cominci il ciclo e chiudendolo quando il ciclo e terminato, si risparmiano due operazioni sul file per ogni iterazione del ciclo.
Figura 4. Esempio senza streaming su disco
Figura 5. Esempio con streaming su disco
D. REALIZZAZIONE DI UN SEMPLICE VI
Come accennato nella prefazione alla lezione, la maggior
parte dei VI in LabVIEW ha tre task principali—acquisire qualche tipo di dati, analizzare i dati acquisiti e presentare il risultato.
Quando ognuna di queste parti è semplice, potete completare
l’intero VI usando pochissimi oggetti sul diagramma a blocchi.
Nella lezione sul File I/O è stato fatto un accenno a dei VI particolari (Write LabVIEW Measurement File, Read LabVIEW
Measurement File) denominati Express.
Gli Express VI sono dei VI di alto livello particolari, progettati
specificamente per completare operazioni comuni, di uso frequente. In questa sezione verranno introdotti alcuni Express VI
in ciascuna di queste categorie: acquisizione, analisi e presentazione.
Sulla palette Functions, gli Express VI sono raggruppati insieme nella categoria Express. Gli Express VI utilizzano il tipo di
dati dinamico per trasmettere i dati tra Express VI.
Aquisizione
Gli Express VI usati per il task di acquisizione includono i
seguenti: DAQ Assistant, Instrument I/O Assistant, Simulate
Signal e Read from Measurement File.
DAQ Assistant
Il DAQ Assistant acquisisce i dati attraverso una scheda di
acquisizione dati.
34
Instrument I/O Assistant
L’Instrument I/O Assistant acquisisce dati di controllo di strumentazione, di solito da un’interfaccia Gpib o seriale.
Simulate Signal
L’Express VI Simulate Signal genera dati simulati come ad
esempio un’onda sinusoidale.
Read From Measurement File
L’Express VI Read from Measurement File legge un file creato
usando l’Express VI Write to Measurement File. Esso legge
specificamente file in formato LVM o TDM. Questo Express VI
non legge file Ascii.
ANALISI
Gli Express VI usati per il task di analisi includono i seguenti—
Amplitude and Level Measurements, Statistics, Tone
Measurements e così via.
Amplitude and Level Measurements
L’Express VI Amplitude and Level Measurements effettua misure di tensione su un segnale. Queste includono misure di livello DC, rms, maximum peak, minimum peak, peak to peak,
cycle average e cycle rms.
Statistics
L’Express VI Statistics calcola dati statistici da una forma d’onda. Questo include i valori mean, sum, standard deviation ed
extreme.
Spectral Measurements
L’Express VI Spectral Measurements effettua misure di spettro
su una forma d’onda, quali magnitude e power spectral density.
Tone Measurements
L’Express VI Tone Measurements cerca un tono singolo con la
frequenza o l’ampiezza più alta. Esso trova anche ampiezza e
frequenza di un tono singolo.
Filter
L’Express VI Filter processa un segnale attraverso filtri e finestre. I filtri utilizzati includono i seguenti: Highpass, Lowpass,
Bandpass, Bandstop e Smoothing. Le finestre utilizzate includono Butterworth, Chebyshev, Inverse Chebyshev, Elliptical, e
Bessel.
PRESENTAZIONE
I task di presentazione sono svolti da Express VI che effettuano una funzione, come l’Express VI Write to Measurement File
o da indicatori che presentano dati sul pannello frontale del VI.
Gli indicatori più comunemente usati per questo task includono il Waveform Chart, il Waveform Graph e l’XY Graph, presentati nella sezione Training per Principianti di LabVIEW
World 12.
Gli Express VI comuni includono il Write to Measurement File,
il Build Text, il DAQ Assistant e l’Instrument I/O Assistant. In
questo caso il DAQ Assistant e l’Instrument I/O Assistant forniscono dati di uscita dal computer alla scheda DAQ o a uno
strumento esterno.
Figura 6. Pannello frontale e diagramma a blocchi dell’esempio Acquire, Analyze and Present
Note sull’autore
Laureato in ingegneria biomedica al Politecnico di Milano, Alessandro
Plantamura lavora in qualità di Senior Application Engineer presso
National Instruments Italy.
Readerser vice.it n. 1325
Write to Measurement File
L’Express VI Write to Measurements File scrive un file in formato LVM o TDM.
Build Text
L’Express VI Build Text crea un testo, di solito per visualizzarlo
sul pannello frontale o per esportarlo su file o verso uno strumento.
Provate voi a realizzare un semplice VI usando questi tre task,
come mostrato nella figura 6, completando il task di presentazione scrivendo i dati in un file di formato LVM!
readerservice.it n.24937
SCUOLA DI LABVIEW
13
Training per esperti
SERVIRE
DATI
AD UN CLIENT UTILIZZANDO TCP/IP
A cura di Alessandro Plantamura
Essendo disponibile sulla maggior parte dei computer, il TCP/IP permette di trasferire
informazioni fra sistemi diversi
A. INTRODUZIONE AL TCP/IP
Il TCP assicura la trasmissione affidabile sulle reti, consegnando i dati in sequenza senza errori, perdite o duplicazione. Il
TCP ritrasmette il datagram finché non riceve una conferma
(acknowledgment). Il TCP è un protocollo basato sulla connessione: ciò significa che i siti devono stabilire una connessione prima di trasferire dati. La trasmissione dei dati avviene
fra un client ed un server. Il TCP permette più connessioni
simultanee. Potete iniziare una connessione aspettando una
connessione in ingresso o cercando attivamente una connessione con un indirizzo specificato. Quando stabilite connessioni TCP, dovete specificare l’indirizzo e una porta a quell’indirizzo. Porte differenti ad un dato indirizzo identificano servizi
differenti a quell’indirizzo.
GENERALITÀ SUL MODELLO CLIENT/SERVER
Il modello client/server è un modello comune per le applicazioni in rete. In tale modello, un set di processi (client) richiede
servizi da altri set di processi (server), come si vede nella fig. 1.
Figura 1. Modello client/ser ver
GENERALITÀ SUL MODELLO CLIENT
La fig. 2 descrive il modello flowchart per la comunicazione
TCP/IP in LabVIEW.
Per maggiori prestazioni, potete elaborare più comandi dopo
avere aperto la connessione. Dopo l’esecuzione dei comandi,
potete chiudere la connessione. Questo flowchart serve da
modello per dimostrare l’implementazione di un dato protocollo in LabVIEW.
STEP PER LA COMUNICAZIONE CON IL MODELLO
CLIENT
Il modello client permette ad un client di comunicare con un
server aprendo in primo luogo la connessione verso il server,
inviando un comando al server, ricevendo un comando dal server e chiudendo quindi la connessione verso il server.
APERTURA DI UNA CONNESSIONE VERSO IL SERVER
Il primo passo consiste nell’aprire una connessione verso il server. Il client deve aprire una porta della rete sulla macchina locale e quindi specificare l’indirizzo IP del server a cui connettersi.
INVIO DI COMANDI AL SERVER
Dopo avere stabilito una connessione verso il server, il client
invia un messaggio riconosciuto dal server. Tale messaggio fa
eseguire lavoro al server.
RICEZIONE DI RISPOSTE DAL SERVER
Dopo l’invio di un messaggio al server, il client deve sapere che
il messaggio è stato accettato e che il server ha eseguito il
lavoro richiesto. Ciò avviene attraverso una risposta inviata dal
server al client.
CHIUSURA DELLA CONNESSIONE VERSO
IL SERVER E REPORT DEGLI ERRORI
Dopo l’invio di tutti i comandi al server, il client chiude la connessione ed esegue il report degli errori.
Figura 2. Modello client TCP/IP in LabVIEW
36
GENERALITÀ SUL MODELLO SERVER
La fig. 3 illustra il modello semplificato di un server in
LabVIEW. LabVIEW ripete questo intero processo finché non
viene interrotto remotamente inviando un comando per terminare il VI. Il VI non riporta errori. Potrebbe restituire una
risposta indicante che un comando non è valido, ma non
SCUOLA DI LABVIEW
STEP PER LA COMUNICAZIONE CON IL MODELLO SERVER
Con il modello server è più complesso permettere a più client
l’accesso al server. Il server deve innanzitutto inizializzarsi,
quindi aspettare una connessione da un client. Quando la connessione è stabilita, il server attende un comando. Il server elabora ed esegue tutti i comandi e restituisce i risultati al client.
Quando il client ha finito di inviare comandi al server, la connessione fra il server ed il client può essere chiusa.
INIZIALIZZAZIONE DEL SERVER
Il server viene inizializzato rimanendo in ascolto per una connessione su una particolare porta di rete.
Figura 3. Modello ser ver TCP/IP in LabVIEW
visualizza un’area di dialogo al verificarsi di un errore. Poiché
un server potrebbe essere non presidiato, considerate attentamente come il server deve gestire eventuali errori.
Probabilmente non volete visualizzare un’area di dialogo in
caso di errore perché richiede un’interazione con l’utente sul
server. Qualcuno dovrebbe cliccare il pulsante OK. Tuttavia,
potreste desiderare che LabVIEW scriva un log delle transazioni
e degli errori in un file o una stringa. Potete incrementare le prestazioni permettendo alla connessione di rimanere aperta. In
questo modo, potete ricevere più comandi, ma bloccherete la
connessione di altri client finché il client corrente non si disconnette. Potete ristrutturare il diagramma a blocchi in modo da
gestire più client simultaneamente, come illustrato nella fig. 4.
ATTESA DI UNA CONNESSIONE
Il modello server permette a più client di connettersi al server.
Ciò si ottiene aspettando una connessione da un client e mettendo quindi l’informazione della connessione in una coda utilizzando un modello di progetto produttore/consumatore. Il
consumatore aspetta di ricevere un comando dal client.
ATTESA DI UN COMANDO
L’attesa di un comando permette di ricevere più comandi da
più client. Ciò si ottiene utilizzando un consumatore per iterare attraverso ciascuno dei client al fine di determinare se un
client ha inviato un messaggio.
ESECUZIONE DEL COMANDO E RESTITUZIONE DEI
RISULTATI
Quando il server ha ricevuto un comando da un client,
il server esegue il comando effettuando del lavoro.
Quando il lavoro è terminato, il server risponde con i
risultati del lavoro o un errore se non è stato possibile
eseguire il lavoro.
CHIUSURA DELLA CONNESSIONE
Quando tutti i client hanno finito di inviare messaggi al server, la connessione alla porta di rete deve essere chiusa.
Figura 4. Gestione di più client simultaneamente
Il diagramma a blocchi usa le capacità multitasking di
LabVIEW per eseguire due loop simultaneamente. Il loop superiore attende continuamente una connessione, quindi aggiunge
la connessione ad una coda sincronizzata. Il loop inferiore controlla ciascuna delle connessioni aperte ed esegue tutti i comandi che sono stati ricevuti. Se si verifica un errore su una delle
connessioni, la connessione viene interrotta. Quando l’utente
abortisce il server, tutte le connessioni aperte si chiudono.
CAPACITÀ E PROBLEMI DEL MODELLO
CLIENT/SERVER
Il modello client/server offre un meccanismo affidabile per
inviare dati sulla rete in modo affidabile. Tuttavia, oltre ad
una maggiore affidabilità, il modello client/server aggiunge complessità al modello di broadcast. Tale complessità è dovuta alla quantità extra di comunicazione fra il client ed il server
per verificare che i messaggi siano ricevuti. Questa quantità
extra di comunicazione fa sì che il modello client/server sia più
lento.
B. IMPLEMENTAZIONE DEL MODELLO CLIENT/SERVER
Utilizzate il VI TCP/IP e le funzioni situate sulla palette TCP per
implementare il modello client/server usando LabVIEW come
applicazione client o server.
37
SCUOLA DI LABVIEW
13
FUNZIONE TCP OPEN CONNECTION (CLIENT)
Utilizzate la funzione TCP Open Connection per stabilire attivamente una connessione con uno specifico indirizzo e porta.
Se la connessione riesce, la funzione restituisce un refnum
della connessione di rete che identifica in modo unico quella
connessione. Usate questo refnum di connessione per fare
riferimento alla connessione nelle successive chiamate del VI.
Se la connessione non è stabilita nel periodo di timeout specificato, la funzione termina e restituisce un errore. Connection
ID è un refnum della connessione di rete che identifica in
modo univoco la connessione TCP. I cluster error in ed error
out descrivono le condizioni di errore.
L’indirizzo identifica un computer sulla rete e può essere
espresso in notazione IP decimale puntata o come hostname.
La porta è un numero addizionale che identifica un canale di
comunicazione sul computer che il server usa per restare in
ascolto di richieste di comunicazione. Quando create un server
TCP, dovete specificare la porta che volete fare utilizzare dal
server per la comunicazione. Se la connessione ha successo, la
funzione TCP Open Connection restituisce un connection ID
che identifica in modo univoco la connessione stessa.
Utilizzate questo connection ID per fare riferimento alla connessione nelle successive chiamate dei VI.
FUNZIONE TCP READ (CLIENT E SERVER)
La funzione TCP Read legge un certo numero di byte da una
connessione di rete TCP, restituendo i risultati in data out.
mode indica il comportamento dell’operazione di lettura in
base alle quattro opzioni seguenti.
Standard (default) – Attende finché tutti i byte richiesti sono
arrivati o finché il tempo specificato in timeout ms si esaurisce.
Restituisce il numero di byte che sono stati ricevuti fino a quel
momento. Se arrivano meno byte del numero richiesto, restituisce il numero parziale di byte e riporta un errore di timeout.
Buffered - Attende finché tutti i byte richiesti sono arrivati o
finché il tempo si esaurisce. Se arrivano meno byte del numero richiesto, non restituisce alcun byte e riporta un errore di
timeout.
CRLF – Attende fino alla ricezione di un CR (carriage return)
seguito da un LF (line feed) entro il numero di byte richiesti o
finché il tempo si esaurisce. Restituisce i byte ricevuti fino a CR
e LF compresi. Se non vengono trovati un CR e LF, non restituisce alcun byte e riporta un errore di timeout..
Immediate - Attende finché viene ricevuto un byte qualsiasi.
Attende il timeout completo solo se non è stato ricevuto alcun
38
byte. Restituisce il numero di byte che sono stati ricevuti fino a
quel momento. Se non viene ricevuto alcun byte, riporta un
errore di timeout.
FUNZIONE TCP WRITE (CLIENT E SERVER)
La funzione TCP Write scrive dati su una connessione di rete
TCP. Tutti i dati scritti o letti sono nel tipo dati stringa. Il protocollo TCP/IP non valuta il tipo o formato dei dati trasferiti,
quindi il tipo stringa è il metodo più flessibile. Potete utilizzare le funzioni Type Cast e Flatten to String per inviare tipi dati
binari o complessi.
Se inviate tipi dati binari o complessi, dovete informare il ricevente circa gli esatti tipo e rappresentazione dei dati inviati per
poter ricostruire l’informazione originale. Inoltre, quando usate
la funzione TCP Read, dovete specificare il numero di byte da
leggere. Un metodo comune è quello di inviare prima un intero a 32 bit per specificare la lunghezza della stringa di dati che
segue. I VI TCP di esempio forniti con LabVIEW offrono maggiori informazioni su questi argomenti e su come i dati sono
tipicamente formattati per comunicazioni TCP/IP.
FUNZIONE TCP CLOSE CONNECTION (CLIENT E SERVER)
Usate la funzione TCP Close Connection per chiudere la connessione verso l’applicazione remota. Se rimangono dei dati
non letti e la connessione si chiude, potreste perdere dei dati.
Usate un protocollo di livello più elevato per fare in modo che
il vostro computer stabilisca quando chiudere la connessione.
VI TCP LISTEN, FUNZIONE TCP CREATE LISTENER E
FUNZIONE TCP WAIT ON LISTENER (SERVER)
Un programma di comunicazione deve avere la possibilità di
aspettare una connessione in arrivo. La procedura è quella di
creare un listener (ascoltatore) ed aspettare una connessione
TCP accettata su una porta specificata. Se la connessione ha
successo, la funzione restituisce un connection ID e l’indirizzo
e la porta del TCP remoto. Fate riferimento al VI Data Server
situato in examples\comm\TCP.llb per un esempio di questa
architettura.
STRING TO IP
La funzione String to IP converte una stringa in un indirizzo di
rete IP o in un array di indirizzi di rete IP. Se String to IP è nel
modo single output, il net address è il primo risultato restituito
dal resolver del sistema operativo. Se String to IP è nel modo
multiple output, il risultato è un array di tutti gli indirizzi di rete
IP restituiti dal resolver del sistema operativo.
Se il nodo non riesce a convertire la stringa, il risultato è un
valore zero nel modo single o un array vuoto nel modo multiple output.
IP TO STRING
La funzione IP to String converte un indirizzo di rete IP in una
stringa.
Readerser vice.it n. 1326
VI E FUNZIONI TCP/IP
I VI TCP/IP sono organizzati analogamente ad altre funzioni
LabVIEW, dove è necessario in primo luogo aprire, quindi leggere/scrivere e chiudere. I VI TCP/IP LabVIEW hanno altra funzionalità che è specifica alla manutenzione di una connessione di rete TCP/IP come il VI TCP e le funzioni IP to String e
String to IP.
REPORT
13
L
a 7a edizione di ‘Focus Embedded’,
la mostra convegno organizzata
dalle riviste Embedded, Elettronica
Oggi ed EO News di Fiera Milano Editore,
si è confermata quale punto di riferimento italiano per chi opera in questo complesso e articolato mercato che, dopo lo
stop subito quest’anno in linea generalizzata come è accaduto alla quasi totalità
degli altri comparti dell’elettronica, sembra mostrare stabili e concreti segnali di
ripresa secondo le ultime rilevazioni effettuate dal gruppo di lavoro italiano E&IC
Embedded & Industrial Computing.
L’evento, tenutosi il 17 novembre a
Milano, ha ospitato un totale di 132 visi-
tatori qualificati, i quali hanno potuto
partecipare a nove seminari tecnici e
avere contatti diretti con le 19 aziende
partecipanti. La sessione plenaria, ha
offerto al pubblico degli intervenuti una
panoramica dei trend tecnologici (con
particolare riferimento ai moduli COM, al
multicore e alle schede di piccolo formato) e di mercato di un settore che sta
dimostrando di essere in continua evoluzione. Anche in questa edizione sono
stati premiati il miglior articolo hardware
e il miglior articolo software, selezionati
dai nostri lettori fra quelli pubblicati dalla
redazione di Elettronica Oggi Embedded
nel corso del 2009
Per la sezione hardware la targa è stata
assegnata a Evoc Group per l’articolo
‘Bus EPI per le schede industriali’ di Pang
Guanshi e Chen Bo, pubblicato su
Embedded di settembre 2009; un riconoscimento è stato anche assegnato a
Eurolink Systems, che distribuisce in Italia
il marchio Evoc. Per la sezione software il
premio è andato invece ad Arrow per l’articolo ‘WinPE 2.1 – Molto più di un tool’
di Vincenzo Difronzo, Field Application
Engineer Embedded Product della società; l’articolo è stato pubblicato su
Embedded di aprile 2009.
Il prossimo appuntamento con Focus
Embedded è per il 2010.
Readerser vice.it n. 1364
Per il settimo anno consecutivo, la mostra-convegno Focus Embedded ha dialogato con la comunità del mondo
embedded su tematiche tecniche e di mercato
A cura di Valerio Alessandroni
FOCUS
EMBEDDED
CAUTO OTTIMISMO
>Ăďs/t>ŝďƌĂƌŝĞƐĨŽƌZŽďŽƚŝĐƐ
/ŵĂŐŝŶŐ>ĂďƉƌĞƐĞŶƚĂůĂůŝďƌĞƌŝĂƉĞƌŝůĐŽŶƚƌŽůůŽĚĞŝƌŽďŽƚE^KŝŶ>Ăďs/t
Ě /Zy ϮϬϬϵ ;dŽŬŝŽͿ /ŵĂŐŝŶŐ>Ăď͕ EĂƚŝŽŶĂů /ŶƐƚƌƵŵĞŶƚƐ Ğ E^K ts͕ ŚĂŶŶŽ ƉƌĞƐĞŶƚĂƚŽ ƵĨĨŝĐŝĂůŵĞŶƚĞ ůĂ
͞/ŵĂŐŝŶŐ>ĂďZŽďŽƚŝĐƐ>ŝďƌĂƌLJĨŽƌE^K͕͟
>ĂůŝďƌĞƌŝĂğĐŽƐƚŝƚƵŝƚĂĚĂƵŶƐĞƚĚŝs/ĚŝĨĂĐŝůĞƵƚŝůŝnjnjŽĐŚĞŝŶƚĞŐƌĂŶŽĚŝǀĞƌƐĞ
ĨƵŶnjŝŽŶŝ Ěŝ ĐŽŶƚƌŽůůŽ Ğ ŵŽǀŝŵĞŶƚĂnjŝŽŶĞ͕ ƉĞƌŵĞƚƚĞŶĚŽ ƵŶĂ ƐƚƌĞƚƚĂ
ŝŶƚĞŐƌĂnjŝŽŶĞĐŽŶůĂǀŝƐŝŽŶĞĂƌƚŝĨŝĐŝĂůĞĞĚŝůŵŽŶĚŽ>Ăďs/tĐŽŶůĂĐŽŵƉůĞƚĂ
ĐŽŵƉĂƚŝďŝůŝƚăĐŽŶ>Ăďs/tZĞĂůͲdŝŵĞ͘
>Ă ůŝďƌĞƌŝĂ ƉĞƌ ƌŽďŽƚ E^K ğ ĂĐƋƵŝƐƚĂďŝůĞ ĚŝƌĞƚƚĂŵĞŶƚĞ ƐƵů ƐŝƚŽ
ŚƚƚƉ͗ͬͬǁǁǁ͘Ŷŝ͘ĐŽŵͬŝƚ͘
WĞƌŝŶĨŽƌŵĂnjŝŽŶŝƐƵůůĞĂůƚƌĞůŝďƌĞƌŝĞƌŽďŽƚŝĐŚĞĚŝ/ŵĂŐŝŶŐ>Ăď ;ƋƵĂůŝ <ƵŬĂ Ğ
DŝƚƐƵďŝƐŚŝͿƉĞƌĂůƚƌŝƉƌŽĚƵƚƚŽƌŝĐŽŶƚĂƚƚĂƚĞĐŝĚŝƌĞƚƚĂŵĞŶƚĞ͘
readerservice.it n.25000
________________________________________________________________________________________
/ŵĂŐŝŶŐ>ĂďͲǀŝĂyy^ĞƚƚĞŵďƌĞϱϭ͕ϮϲϵϬϬ>ŽĚŝ͕/ƚĂůLJͲƚĞůĞĨŽŶŽнϯϵϬϯϳϭϰϭϲϯϲϲͲĨĂdžнϯϵϬϯϳϭϱϲϵϬϮϴ
͘&͘ĞW͘/͘ϬϰϭϵϵϯϬϬϵϲϱͲ/ƐĐƌŝƚƚĂĂůZĞŐŝƐƚƌŽ/ŵƉƌĞƐĞĚŝ>ŽĚŝͲĂƉŝƚĂůĞ^ŽĐŝĂůĞϭϬϬ͘ϬϬϬ͕ϬϬΦ
ǁǁǁ͘ŝŵĂŐŝŶŐůĂď͘ŝƚͲŝŶĨŽΛŝŵĂŐŝŶŐůĂď͘ŝƚ
D A L L A C A RTA A L W E B
13
HTTP://WWW
Quando le nostre pagine non bastano, l'enorme serbatoio del web può dare
una mano. Su una rivista car 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.
Inserimento di testo da un sito web in un indicatore stringa
su un pannello frontale
Questo VI utilizza nodi proprietà per estrarre testo da un URL e inserirlo in un indicatore stringa sul vostro pannello frontale.
Iniziate con un controllo WebBrowser, usate il suo nodo proprietà per assegnare un URL, aspettate che finisca di caricare
usando un altro nodo proprietà e monitorando se è occupato, usate la proprietà documento per passare il documento a un VI
Variant to Data (che lo riconosce come documento Html) ed estraete il corpo e il testo interno usando nodi proprietà.
Link alla pagina:
ni.com/italian
infocode: itf28n
Confinare il cursore del mouse al pannello frontale del VI
L’esempio richiama l’API di Windows per confinare il cursore ad aree differenti all’interno del VI.
Questo VI dimostra come limitare il movimento del cursore del mouse ad un solo VI. Ciò vi permette di limitare l’uso del
computer ad una certa applicazione LabVIEW come unica applicazione accessibile. Il VI non blocca la funzionalità Alt+Tab.
Tuttavia, può essere molto utile con sistemi touch screen dove non c’è una tastiera disponibile. Il VI richiama la funzione
ClipCursor dalla dll di sistema user32.dll. Pertanto, il VI è limitato alle sole piattaforme Windows.
Link alla pagina:
ni.com/italian
infocode: itf28n
Cattura di eventi di sistema Windows senza polling (Windows)
Spesso, dobbiamo fare in modo che i nostri VI reagiscano a eventi che si verificano in Windows e sono esterni al nostro
programma. Un esempio potrebbe essere quello di un utente che cambia la risoluzione del suo schermo. Quando un evento
di questo tipo si verifica, esso altererà l’aspetto e la posizione della nostra interfaccia utente e potremmo desiderare di
eseguire delle regolazioni conseguenti. Potremmo farlo tramite un loop che controlla costantemente la risoluzione dello
schermo e la confronta con il valore letto durante la precedente iterazione, ma questo sprecherebbe inutilmente preziose
risorse di CPU. Questi VI esemplificativi dimostrano come possiamo invece registrare un VI di callback con il runtime .NET
Microsoft in modo che, quando l’evento Windows si verifica, esso triggeri automaticamente il VI di callback senza bisogno di
polling. Il nodo Register Event Callback è configurato in modo da rilevare i cambiamenti di risoluzione dello schermo, ma può
essere facilmente modificato per rilevare anche altri eventi.
Link alla pagina:
ni.com/italian
40
infocode: itf28n
D A L L A C A RTA A L W E B
Gestire l’errore di file già aperto mediante code
A volte potete avere più programmi che accedono allo stesso file di dati. Se LabVIEW cerca di aprire un file di cui un altro
programma ha già il controllo (come il software di backup dei dati), otterrete l’errore 5 quando cercherete di aprire il file in
LabVIEW. Questo può provocare problemi se state registrando dati e volete che siano tutti scritti nel file. Il problema può
essere eliminato se utilizzate code per scrivere i dati e gestire questo specifico errore.
Link alla pagina:
ni.com/italian
infocode: itf28n
Logger della memoria del computer
E’ spesso difficile seguire visivamente quanta memoria o CPU è utilizzata sul vostro computer in un certo istante. Questo VI
richiama il framework .net, estrae l’utilizzo del vostro computer e ne registra i dati in un file Tdms. Potete quindi osservare
i dati con il Tdms viewer per vedere i trend di CPU, memoria impegnata e percentuale di memoria utilizzata. Dovete
semplicemente configurare la frequenza con la quale volete registrare i vostri dati.
Link alla pagina:
ni.com/italian
infocode: itf28n
Libreria di riferimento Specific Error Handler (SEH)
Benché LabVIEW offra tool di base per la gestione di errori ed eccezioni, implementare una strategia complessiva di gestione
degli errori è impegnativo e richiede un significativo sforzo di programmazione. Una strategia complessiva di gestione degli
errori richiede sia la capacità di rispondere a specifici codici di errore (per esempio: ignorare un errore che non riguarda il
sistema), sia la capacità di eseguire azioni generali sulla base del tipo di errore che si verifica (per esempio: registrare tutti
i ‘warning’ in un file). La libreria di riferimento SEH permette di semplificare il primo di questi due compiti mettendo a
disposizione tool che aiutano a gestire specifici errori. La libreria vi permette inoltre di classificare gli errori in base al loro
codice, che può quindi fornire un feedback ad un sistema centrale di gestione degli errori. La SEH consiste di un Express VI
configurabile che vi aiuta a gestire specifici errori e di subVI che categorizzano gli errori per l’uso da parte di un sistema
centrale di gestione degli errori.
Link alla pagina:
ni.com/italian
infocode: itf28n
Libreria Simple Messaging Reference (STM) di LabVIEW
Per gli ingegneri che progettano sistemi distribuiti dove gli host interagiscono attraverso una rete, uno dei problemi
principali è costruire un protocollo di comunicazione efficace. La Libreria Simple Messaging Reference (STM) può migliorare
prestazioni, utilizzabilità, manutenibilità e scalabilità di un sistema distribuito. A differenza delle API di comunicazione di
basso livello, l’uso di pacchetti formattati rende più gestibile la manipolazione dei dati e migliora il throughput
minimizzando la trasmissione di dati ripetitivi. Il protocollo STM può migliorare significativamente la produttività e le
prestazioni client/server astraendo lo strato di trasporto. Ciò vi permette di creare codice intuitivo più facile da espandere e
mantenere. La libreria di riferimento STM è adatta per molte applicazioni client/server, ma fornisce anche una base per
modelli di progettazione di livello più elevato.
Link alla pagina:
ni.com/italian
infocode: itf28n
41
LA VOCE DEGLI UTENTI
13
Vi presentiamo una selezione di argomenti
di discussione sul Forum di ILVG.it
Come usare la seriale per leggere un I/O da PLC
Inviato: Mer Dic 02, 2009 10:59 am
Ciao, come posso leggere un segnale da un'uscita logica dal PLC?
Ho un PLC che mi setta una porta al livello alto ogni volta che
accade un evento, vorrei leggere il verificarsi dell'evento con
LabVIEW via seriale...si può fare?
Ciao e grazie!
avlas
Ciao,
anche se non sono un super esperto, vedo se riesco ad aiutarti,
però prima occorre sapere che PLC utilizzi.
max81
Ciao, in realtà non penso sia importante il tipo di PLC,
immaginavo di voler leggere lo stato logico di un contatto
collegato tra RX e GND della seriale...
Ho studiato un po’ le RS232, il segnale va da -12 (Logico 1) a
+12 (logico 0), ed è in codifica 8N1, quindi non credo sia
possibile leggere lo stato di un bit settato sul pin RX della
seriale...è un po’ più complesso per via della codifica 8N1...
avlas
No, invece dipende dal PLC che hai, ti riporto l'esempio di due
PLC che utilizzo, il primo è il PLC Panasonic FP0 (ma anche altri
modelli) implementa un protocollo di comunicazione chiamato
Mewtocol su RS232, che ti permette di inviare una stringa di
comando per poter leggere o scrivere sui registri interni del PLC,
ad esempio se tu vuoi conoscere lo stato degli ingressi digitali,
invii una stringa contenente dei campi di comando al PLC e lui ti
risponde con una stringa contenente il valore dei registri.
Altro esempio è il PLC Siemens S7-200, che utilizza un protocollo
di comunicazione proprietario denominato PPI, per poter
comunicare con S7-200 si possono utilizzare varie soluzioni
(commerciali e non) ad esempio la libreria libnodave
(liberamente scaricabile dal web), oppure utilizzare la modalità
freeport della porta di programmazione.
Scusa se sono stato prolisso, ma era solo per dirti che in base al
PLC che si utilizza, si possono adottare varie soluzioni.
ciao
Max
Ciao, se guardi tra gli esempi di LabVIEW, troverai come poter
effettuare la lettura degli stati logici dei pin delle porte seriali,
ovviamente per quel che riguarda le tensioni in gioco devi fare
moooolta attenzione!
Ciauz!
aris
Qui si sta facendo confusione tra leggere lo stato logico di un
segnale e lo stato logico di un pin.
Il pin sulla seriale è vero, si puo' leggere, ma quello che vuole
fare max è leggere lo stato logico di un segnale del PLC, che
credo possa essere un pulsante o un led o che altro.
Per poterlo leggere interrogando il PLC, si puo' fare tramite
LabVIEW e seriale ma devi avere il driver opc che ti permette di
comunicare con quel PLC. Questi driver sono inclusi nel pacchetto
LabVIEW DSC, e forse sono acquistabili anche singolarmente.
Fatto sta che senza questi driver, non credo si possa comunicare
con un PLC.
Purtroppo nella mia ignoranza, non ti so dire se si possa o meno
comunicare direttamente via seriale sviluppando un vi che
realizzi il protocollo richiesto come si fa normalmente con gli
strumenti collegati alla usb o alla seriale...ma ciao!
gepponline
[Continua su 4354]
avlas
Inserire messaggi di errore
Inviato: Lun Nov 30, 2009 1:20 am
Vorrei inserire dei messaggi di errore che compaiono ad
esempio quando dal front panel inserisco un valore troppo
alto di un certo parametro. Se ad esempio imposto una
posizione di 30 mm e il mio stepper motor ha uno stroke di
20 mm cliccando sul controllo position del front panel
dovrebbe comparire un errore del tipo: "Valore superiore al
limite consentito di 20 mm "...o qualcosa del genere...
fabietto84
Ciao,
guarda questo link che spiega come creare errori custom:
Custom Error Handling In LabVIEW
http://zone.ni.com/devzone/cda/tut/p/id/3209
In sostanza ti crei il tuo set di errori, salvi il file con il
formato nomefile-errors.txt, riavvii LabVIEW e da quel
momento se c'è un codice di errore pari al tuo codice custom
LabVIEW lo gestisce come tale e ti ritorna il cluster d'errore.
Ciao,
Andrea
Ryan
Un altro metodo che lì non dice è aggiungere in fondo al
campo "source" di un errore la stringa <err> seguita dal
messaggio personalizzato.
Snamprogetti
[Continua su 4352]
fabietto84
42
LA VOCE DEGLI UTENTI
Come leggere dati da un foglio Excel ed integrare
Inviato: Mar Nov 24, 2009 1:10 pm
Salve, avrei la necessità di leggere i dati da un foglio Excel ed
effettuare una integrazione... sembra molto semplice, ma nn
so da dove cominciare... chi può aiutarmi?
In realtà i segnali in volt rappresentano il voltaggio acquisito
da un accelerometro ad un certo istante.
Mi occorre la velocità, per questo dovrei integrare la funzione
accelerazione, di cui però non dispongo. Ho soltanto due
colonne di dati: il tempo e i volt (che a meno di una costante
rappresentano l'accelerazione acquisita).
chi può aiutarmi?
mistereko
Ciao Mistereko,
La lettura di dati (anche eterogenei) da file Excel è un
argomento ampiamente trattato nel forum. Inserisci "excel"
nella casella di ricerca e ti appariranno un mondo di
soluzioni. A quel punto devi solo individuare quella che fa al
caso tuo.
Per quanto riguarda l'integrazione... Per ottenere la
corrispondenza velocità-accelerazione devi sapere almeno la
velocità iniziale dell'oggetto, quella all'istante t0
dell'acquisizione da lì tramite un calcolo matematico puoi
risalire a tutte le velocità punto punto. Con il processo
inverso devi conoscere la velocità finale dell'oggetto, quindi
quella all'istante tn.
Ricky
Vorrei indicazioni più precise, per favore...non riesco a
trovare nulla...
help me!!!!!!!!!!!!!!!!!!!!!
mistereko
Con read spreadshet file importi i dati in un array, dalle tue
indicazioni si tratterà di due colonne.
Usa index array per ottenere la separazione delle due
colonne (setta zero su index column della funzione index
array), quindi esegui le operazioni che ti servono per
ottenere la terza colonna, build array è la funzione che ti
serve per ricostruire il tuo array da reinviare allo spreadsheet
file con write to spreadsheet file.
Comunque se inserisci Excel nella ricerca su questo forum
trovi un infinità di esempi (prova anche Excel LabVIEW su
Google).
nicola
[Continua su 4350]
mistereko
Plottaggio in un graph dei dati in funzione del tempo
Inviato: Lun Nov 23, 2009 8:11 pm
Salve a tutti.. Sono nuovo del forum e quindi approfitto
dell'occasione per i saluti.
Veniamo al mio problema: Per la mia tesi di laurea sto
costruendo un dispositivo che rileva la corrente che circola in
un cavo e dopo i vari calcoli quali potenza dissipata ecc.
invio il dato via bluetooth.
In LabVIEW sto compilando il programma per la
visualizzazione dei dati real-time. Vorrei sapere come fare a
visualizzare in un grafico il dato che ricevo in corrispondenza
dell'istante di tempo (ore:minuti) in cui appunto è stato
ricevuto.
Il mio problema è che questi dati li invia il microcontrollore
(PIC18F4550) circa ogni secondo e con il circa intendo che il
tempo non è costante ma potrebbe variare (fino ad anche
due secondi).
Ho provato ad usare un waveform graph mettendo come
punto iniziale il tempo di inizio acquisizione (con un offset)
ed in effetti il tutto sembrerebbe funzionare bene, ma dopo
qualche minuto mi accorgo che non sono più in fase con il
clock, appunto perché le acquisizioni avvengono secondo
tempi non costanti.
Esiste un modo per plottare questo valore ed il tempo in cui
esso viene ricevuto dal read della seriale?
Grazie a tutti...
Demetrio
demetrix80
Secondo me puoi dare un'occhiata ai Chart o ai Grafici XY: in
particolare a questi ultimi puoi passare le due coordinate del
punto, dataora e valore.Ciao!!
MagicBotolo
Ciao MagicBotolo, grazie per la risposta... Ma è possibile
utilizzando un graph XY lavorare in real time? Io ho provato
ad utilizzare allo scopo l'XY graph ma non ci sono riuscito.
Sapresti per caso come fare?
Grazie
Demetrio
demetrix80
[Continua su 4348]
demetrix80
43
A P P U N TA M E N T I
13
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 NATIONAL INSTRUMENTS
ni.com/training/i
LABVIEW CORE I
Milano:
Roma:
Padova:
LABVIEW CORE II
Milano:
15 - 17 marzo
12 - 14 aprile
10 - 12 maggio
3 - 5 maggio
6 -7 maggio
18 - 20 maggio
18 - 19 marzo
15 - 16 aprile
13 - 14 maggio
LABVIEW:
Acquisizione dati e condizionamento dei segnali
Milano:
21 – 23 aprile
Roma:
1 - 3 marzo
Padova:
23 - 25 marzo
LABVIEW FPGA
Milano:
Padova:
22 - 23 marzo
4 - 5 maggio
LABVIEW:
Sviluppo di applicazioni Real-Time
Milano:
12 - 14 maggio
Padova:
27 - 29 aprile
LABVIEW:
Visione artificiale ed elaborazione immagini
Milano:
25 - 26 marzo
LABVIEW:
Managing software engineering
Milano:
11 - 12 marzo
ROMA
Presso Pick Center Piazza Marconi 15, 00192 - Tel.: 02-41309217,
Fax: 02-41309215 - Email: [email protected]
CORSI DI FORMAZIONE TEMATICI SULLE MISURE
CON L’UTILIZZO DEL PERSONAL COMPUTER
National Instruments ha ampliato l’offerta formativa disponibile
con una serie di corsi orientati alle tematiche dedicate ai metodi
di misura tramite l’utilizzo di strumentazione basata su Personal
Computer.
Tali corsi hanno l’obiettivo di spiegare le basi teoriche delle
diverse misure tramite l’uso 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.
LA MISURA CON IL SUPPORTO DEL PERSONAL
COMPUTER
Corso per non esperti di informatica, della durata complessiva di
due giorni, dedicato a chi intende sviluppare competenze utili a
confrontarsi con sviluppatori, progettisti di sistemi e fornitori di
componenti per misura e acquisizione dati. Obiettivo del corso è
di fornire ai partecipanti, responsabili o tecnici di laboratorio e di
produzione, le basi per poter affrontare le misure di qualsiasi
genere tramite l’utilizzo del PC.
LABVIEW CONNECTIVITY
CORSO SPECIALISTICO: MISURE ELETTRICHE
CON IL SUPPORTO DEL PERSONAL COMPUTER
LABVIEW:
Corso specialistico dedicato a tecnici che necessitano di
informatizzare la misura di grandezze elettriche, siano queste
specifiche o generali tramite l’utilizzo del Personal Computer.
Il corso, della durata di un giorno, è dedicato a tecnici di
laboratorio o di produzione, che abbiano già una formazione di
base di misure elettriche e che intendano sfruttare le potenzialità
dei sistemi di acquisizione dati. Prerequisiti: frequentazione del
corso la misura con il supporto del Personal Computer o
competenze equivalenti.
Padova:
11 - 12 maggio
Introduzione alla programmazione CAN
Milano:
19 – 20 aprile
TESTSTAND I: Introduzione
Milano:
15 - 17 marzo
TESTSTAND II: Personalizzazione
Milano:
1 - 2 aprile
Sedi dei corsi
MILANO
Presso gli uffici National Instruments Italy srl, Via Anna Kuliscioff
22, 20152 - Tel.: 02-41309217, Fax: 02-41309215 - Email:
[email protected]
44
PADOVA
Presso il Centro di Formazione Certificato NI di I.R.S. Srl, Via
Vigonovese 81/A, 35127 - Tel.: 049-8705156, Fax: 049-7625206 Email: [email protected]
CORSO SPECIALISTICO: MISURE TERMOTECNICHE CON IL SUPPORTO DEL PERSONAL
COMPUTER
Dedicato a tecnici che necessitano di informatizzare le misure di
A P P U N TA M E N T I
temperatura e termotecniche più in generale, per applicazioni
nei settori più svariati.
Obiettivo del corso è fornire ai partecipanti le conoscenze utili a
definire le migliori soluzioni per effettuare misure di
temperatura, di umidità, pressione e portata.
Il corso, della durata di un giorno, è dedicato a tecnici di
laboratorio o di produzione che intendano sfruttare le
potenzialità dei sistemi di acquisizione dati. Prerequisiti:
frequentazione del corso la misura con il supporto del Personal
Computer o competenze equivalenti.
CORSO BASE DI ACUSTICA E VIBRAZIONI
Questo corso ha l’obiettivo di fornire una panoramica delle più
comuni misure di acustica e vibrazione in modo da fornire le
competenze di base utili a collaborare o interagire con reparti
verticalmente impegnati in questo ambito
CORSO AVANZATO DI ACUSTICA E VIBRAZIONI
Questo corso è la naturale estensione del corso di base ed ha
l’obiettivo di fornire indicazioni sui più comuni metodi e le
comuni procedure di misura in acustica e vibrazione. Il corso è
dedicato a coloro che saranno direttamente coinvolti nel processo
di misura.
Misure elettriche con il supporto del Personal Computer
Milano:
14 aprile
Misure termotecniche con il supporto del Personal
Computer
Milano:
15 novembre
Acoustics & Vibration Base
Milano:
8 - 9 marzo
17 – 18 maggio
On-Line LabVIEW Core I:
mattino, 2 – 5 marzo
On-Line LabVIEW Core II:
pomeriggio, 2 – 4 marzo
On-Line LabVIEW Real-Time: mattino, 16 – 19 marzo
On-Line LabVIEW Core I:
mattino, 27 – 30 aprile
On-Line LabVIEW Core II:
pomeriggio, 27 – 30 aprile
On-Line LabVIEW Core II:
mattino, 11 – 13 maggio
On-Line LabVIEW Core I:
mattino, 25 – 28 maggio
On-Line TestStand I:
pomeriggio, 11 – 14 maggio
On-Line LabVIEW Core II:
pomeriggio, 25 – 27 maggio
On-Line LabVIEW Core II:
pomeriggio. 29 – 31 marzo
ALTRI APPUNTAMENTI
MOSTRE CONVEGNO
MC4 – Control and Communication
È la mostra-convegno interamente dedicata alle tecnologie e ai prodotti per il controllo del movimento
Bologna:
12 marzo
FIERE DI SETTORE
Embedded World
Norimberga:
2 - 4 marzo
Hannover Messe
Hannover:
19 - 23 aprile
Acoustics & Vibration Advanced
Milano:
22 - 23 marzo
Interkama (Hannover Messe)
Hannover:
19 - 23 aprile
Verificate il calendario aggiornato alla pagina web
ni.com/training/i
Bias 2010
Rho, Fiera Milano
LA FORMAZIONE NATIONAL INSTRUMENTS
ANCHE ON-LINE!
EVENTI NATIONAL INSTRUMENTS
I programmi di formazione National Instruments offrono il
metodo più efficiente e veloce per incrementare competenze e
produttività nello sviluppo di applicazioni basate sulla
piattaforma software/hardware NI anche da remoto. Di seguito la
lista dei corsi on-line attualmente disponibili.
I partecipanti potranno accedere alla classe virtuale tramite web
e interagire direttamente con l’istruttore e gli altri partecipanti
al corso.
Per partecipare bastano un personal computer e una connessione
di rete veloce. Ogni giornata ha una durata di quattro ore. Il
numero delle giornate di corso dipende dalla tipologia prescelta.
Per maggiori informazioni e verificare il calendario aggiornato
del mese di gennaio, visitate la pagina web ni.com/training/i.
4 – 7 maggio
NIDays 2010 Parigi:
2 febbraio
NIDays 2010 Roma:
24 febbraio
NIDays 2010 Madrid:
16 marzo
Automotive Forum 2010
Torino:
26 maggio
Verificate il calendario aggiornato degli eventi National
Instruments alla pagina web ni.com/italy/eventi
45
REPORT
13
LABVIEW IN TOUR IN
MAGLIA ROSA
FA INCETTA DI PRESENZE!
466
D
ieci tappe in 10 diverse città italiane e un mese di tempo – dal
27 ottobre al 26 novembre – per
imparare tutto quello che c’è da sapere
sul nuovo NI LabVIEW 2009. E nuovo lo
è davvero, già a partire dal nome. Tanto
per cominciare, infatti, cambia il metodo
di assegnazione del nome che, dallo
scorso anno, viene preso in prestito dall’anno di rilascio, con l’obiettivo principale di immettere sul mercato una versione stabile, consolidata e accompagnata da un percorso di aggiornamento
utenti più agevole. Nel corso del tour, il
pubblico presente, che ha registrato
oltre 300 presenze, è stato introdotto
alle novità del software, presentato in
anteprima mondiale durante NIWeek,
l’annuale conferenza sulla progettazione grafica di sistemi organizzata da
National Instruments a Austin.
Nel pomeriggio delle date di Milano,
Torino, Padova e Roma, il Tour è proseguito con un seminario formativo sul
tema ‘PCI Express, USB, ZigBee, Wi-Fi,
Ethernet, PXI: qual è il bus ideale per le
tue applicazioni di acquisizione dati,
data logging e monitoraggio?’
Durante le giornate di seminario, l’attenzione si è focalizzata sulla possibilità
di semplificare lo sviluppo di
architetture parallele con una
nuova tecnologia di virtualizzazione che sfrutta le potenzialità
dei sistemi multicore, un compilatore ottimizzato e IP che
migliorano la progettazione
Fpga. LabVIEW 2009 permette
di distribuire codice su reti di
sensori wireless per realizzare
sistemi di misura e monitoraggio industriale più efficaci. Il
nuovo ambiente di programmazione dispone di nuove soluzioni per il test di standard wireless
quali Wlan, WiMAX, GPS e
sistemi Mimo su un’unica piattaforma hardware. LabVIEW
2009 semplifica inoltre la matematica real-time, snellendo la
progettazione di algoritmi
matematici e la loro distribuzione su hardware real-time.
“Nel difficile scenario dell’economia attuale, tecnici e inge-
gneri si sforzano per completare i propri
progetti con meno risorse e in minor
tempo” afferma il Dr. James Truchard,
presidente, CEO e cofondatore di
National Instruments. “Con l’arrivo di
nuove opportunità provenienti da investimenti nelle infrastrutture, monitoraggio ambientale, ricerca medicale e progettazione e test di dispositivi, abbiamo
incentrato lo sviluppo di LabVIEW 2009
su tecnologie chiave quali multicore,
progettazione Fpga, piattaforme wireless e matematica real-time per sostenere l'innovazione in queste aree".
La virtualizzazione consente inoltre di
eseguire simultaneamente più sistemi
operativi sullo stesso hardware di elaborazione multicore per realizzare sistemi
più efficienti. Il nuovo software NI RealTime Hypervisor unisce la potenza di
LabVIEW Real-Time Module con le funzionalità di un sistema operativo general-purpose per ridurre il costo e le
dimensioni del sistema. Attraverso questo software, è possibile eseguire simultaneamente Windows XP e LabVIEW
Real-Time sullo stesso controller, suddividendo i core di elaborazione tra i due
sistemi operativi per un uso più efficiente delle risorse di sistema. Real-Time
Hypervisor funziona sia con i controller
NI PXI dual-core e quad-core sia con
l’Industrial Controller di National
Instruments.
Se non avete potuto partecipare e vi
state domandando come recuperare
lunghezze (e tutte le informazioni che vi
siete perse), guardate le presentazioni
alla pagina web ni.com/italian inserendo l’infocode ex9v44.
Readerser vice.it n. 1365
A cura di Alessandro Plantamura
LabVIEW 2009, spiegato nelle 10 tappe del LabVIEW 2009 Tour nei mesi di ottobre e novembre
AAA
L A B V I E W E L AVO R O
13
Conoscete bene LabVIEW? Date un’occhiata alle offerte di lavoro
che abbiamo selezionato da ILVG.it, oppure inviate il vostro curriculum...
RICERCHIAMO
PROGRAMMATORE FPGA (rif. BS01110)
Società settore broadcasting (apparati
per la trasmissione di segnali televisivi)
cerca un Programmatore. Il/la candidato/a deve aver maturato esperienza di
programmazione con utilizzo dei seguenti linguaggi: FPGA, MATLAB, C, C++,
LabVIEW. Ai fini della selezione viene data
massima importanza alla conoscenza di
FPGA. Si richiede la laurea o il diploma in
informatica e la buona conoscenza della
lingua inglese.
Sede di lavoro: Brescia (Bs)
Rif.110
Data di pubblicazione: 12/01/2010
www.profiliecarriere.it
PROGETTISTA ELETTRONICO (ID 4399)
Per importante azienda zona Alta
Valsugana (TN) selezioniamo un
Progettista Elettronico.
Requisiti: esperienza di 2-3 anni in progettazione schemi elettrici ed elettronici, programmazione PLC; gradita esperienza in risk
analysis. Buona conoscenza ed utilizzo Orcad,
autocad elettrico, matlab, Pro engineer,
LabVIEW. Buona capacità lavorare in team.
Titolo di studio: diploma di perito elettronico o elettrotecnico o laurea.
Sede di lavoro: zona Alta Valsugana (TN).
Data di pubblicazione: 05/01/2010
www.studiomarcocalza.com
TESTER - TECHNICAL WRITER - DEVELOPER
LABVIEW
TXT e-solutions è un player internazionale nella fornitura di soluzioni software
strategiche che aiutano le aziende a
migliorare la loro profittabilità e competitività. Quotata in Borsa Italiana dal
luglio 2000, TXT è inserita nei segmenti
TechStar e All Stars (TXTS).
TXT, per la propria Business Unit Next Aerospace and Defence, è alla ricerca di
Tester, Developer, Technical Writers Junior
e Senior LabVIEW. Per la posizione di
Technical Writers i candidati ideali sono
neolaureati in materie tecnico - informa-
tiche o con minima esperienza in ambito
LabVIEW. Requisiti minimi richiesti: conoscenza base del sistema LabVIEW per scrivere documentazione tecnica su un sistema esistente; per la posizione di developer e tester LabVIEW i candidati ideali
sono laureati in materie tecnico informatiche con almeno 2 - 3 anni di esperienza.
Requisiti minimi: esperienza nei test
automatici; buona conoscenza della lingua inglese. Completano il profilo senso
di responsabilità, attitudine al problem
solving, precisione e capacità di teamworking. Ai sensi della normativa vigente
l'offerta di lavoro si intende estesa a
entrambi i sessi (L 903/77). Si invitano
gli/le interessati/e ad inviare un dettagliato CV con autorizzazione al trattamento dei dati (D. lgs. 196/03) al portale
http://www.txtgroup.com/it/careers.shtml
Rif. IMRZ183497.
Titolo di studio: laurea.
Tipo contratto: contratto a progetto o partita IVA con possibilità di rinnovo o inserimento.
Sede di lavoro: Milano o Nerviano
Data di pubblicazione: 5/01/2010
www.jobadvisor.it
INGEGNERE PROGETTISTA
HR Service Srl ricerca e seleziona un ingegnere progettista per azienda leader nel
settore metalmeccanico; inserito all’interno dell’ufficio ricerca e sviluppo il candidato si occuperà della progettazione di
turbomacchine, dallo studio della palettatura e della fluidodinamica, al calcolo
strutturale e alla progettazione meccanica. Sarà inoltre di sua competenza l’attività di laboratorio, il disegno meccanico 3D,
il controllo qualitativo e dimensionale, lo
studio di componenti meccanici e la preparazione della documentazione per progetti dell’Unione Europea. Profilo del candidato: laurea in ingegneria (meccanica
indirizzo energetico, chimica, elettrica,
energetica, aerospaziale). È richiesta
un’ottima capacità di utilizzo del
Pacchetto Office, e la conoscenza di programmi di calcolo ingegneristico come
Matlab, LabVIEW, CAD 3D, e di simulatori di
processo e linguaggi di programmazione.
Costituisce requisito essenziale un’ottima
conoscenza della lingua inglese e una
buona padronanza di quella tedesca.
L’azienda offre: contratto e retribuzione in
linea con l’esperienza. I candidati interessati possono inviare dettagliato curriculum, citando il riferimento 511 a:
[email protected] - tel. 030
6875773 – cell. 335/6237143. La ricerca è
rivolta a persone di entrambi i sessi (Legge
903/77). I curricula devono essere corredati di Autorizzazione al trattamento dei dati
personali ai sensi della L.196/03.
Rif. 511.
Titolo di studio: laurea in ingegneria.
Tipo contratto: contratto e retribuzione in
linea con l’esperienza.
Sede di lavoro: Milano.
Data di pubblicazione: 27/12/2009
www.lavoro-oggi.it
RESPONSABILE INDUSTRIALIZZAZIONE
Per azienda operante nel settore della
componentistica oleodinamica, selezioniamo un responsabile industrializzazione. Il candidato diplomato o laureato in
ingegneria meccanica, 30/35 anni,
rispondendo al direttore tecnico, si occuperà della progettazione e sviluppo di
componenti oleodinamici nonché dell’industrializzazione 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. Completano il profilo dinamismo, determinazione e intraprendenza,
ottima capacità di lavoro in autonomia e
spiccate doti di problem-solving.
Rif. RH478/08
Titolo di studio: diploma o laurea in ingegneria meccanica.
Lingue conosciute: inglese buono.
Sede di lavoro: Milano.
Tipo di contratto: Interminato
Data di pubblicazione: 27/12/2009
www.incontro-lavoro.it
47
INFORMATIVA AI SENSI DEL
CODICE IN MATERIA DI PROTEZIONE
DEI DATI PERSONALI
LA VOCE DEGLI UTENTI
www.labviewworld.it
LabVIEW World - La prima rivista italiana per la comunità di LabVIEW
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 l’invio 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 all’atto della sottoscrizione dell’abbonamento, 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 dell’art. 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 – all’indirizzo sopra indicato. Presso
il titolare è disponibile elenco completo ed aggiornato dei
responsabili.
Informativa resa ai sensi dell’art. 2, Codice
Deontologico Giornalisti
Ai sensi dell’art. 13, d. lgs 196/2003 e dell’art. 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 dell’art. 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 dell’art. 138, d. lgs 196/2003, non è esercitabile il diritto di conoscere l’origine dei dati personali ai sensi
dell’art. 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.
Sede legale - Via Salvatore Rosa 14, 20156 Milano, tel +39 02 366092.1
fax +39 02 366092.280 www.fieramilanoeditore.it
Sede Operativa - Viale Espinasse 141, 20156 Milano
tel. +39 02 366092.1 fax +39 02 366092.525
Direzione
Sergio Maggioni Presidente
Corrado Minnella Amministratore Delegato
Alberto Taddei Publisher
Comitato
di redazione
Nadia Albarello, Matteo Bambini,
Matteo Foini, Alessandro Ricco
Redazione
Alberto Taddei Direttore Responsabile - [email protected]
Valerio Alessandroni Direzione Tecnica • [email protected]
Redazione - tel: 02 366092.527-514
Collaboratori: Nicola Bavarone, Michele Corrà, Massimo Lorenzi, Marco Luciani, Enzo Nava,
Alessandro Ricco, Emanuele Stucchi, Franco Trespidi, Halvor Snellingen
Grafica e
produzione
Bimage.it Progetto grafico
Franco Tedeschi Coordinamento grafici - impaginazione
[email protected]
Alberto Decari Coordinamento DTP - [email protected]
Grafiche Sima Ciserano - BG - Stampa
Nadia Zappa Ufficio Traffico - [email protected]
tel. 02366092 230 - fax: 02 366092 255
Pubblicità
Giuseppe De Gasperis Sales Manager
[email protected] - tel. 02366092 523 - fax: 02 366092 524
Agenti Italia:
PIEMONTE, LIGURIA, VALLE D'AOSTA • R. Romeo/Publikappa •
tel: 011-723406 • fax: 011-723.406 • cell 335-5304196
VENETO, TRENTINO ALTO ADIGE,
FRIULI VENEZIA GIULIA • Idelfonso Elburgo •
tel: 049-8642.988 • fax: 049-8642989 • cell 328-8855203
International Sales
U.K.-SCANDINAVIA - OLANDA - BELGIO
The Huson European Media • Gerry Rhoades-Brown •
tel: +44-1932-564999 • fax: +44-1932-564998
SWITZERLAND:
Iff media ag • Carla Widmer •
tel: +41-52-6330888 • fax: +41-52-6330899
GERMANIA e AUSTRIA: Mediaagentur • Adela Ploner •
tel: +49-8131-3669920 • fax: +49-8131-3669929
USA: Huson European Media Usa • Ralph S. Lockwood •
tel: +1-408-8796666 • fax: +1-408-8796669
TAIWAN: Worldwide Services • Stuart Phillips-Laurie •
tel: +886-4-2325-1784 • fax: +886-4-2325-2967
Abbonamenti
N. di conto corrente postale per sottoscrizione abbonamenti:
48199749 intestato a: Fiera Milano Editore SpA, Via Salvatore Rosa 14, 20156 Milano.
Si accettano pagamenti anche con le principali carte di credito.
Per gli utenti Developer Suite e standard Service Program
di National Instruments è già incluso l’abbonamento alla rivista
Abbonamento annuale (4 numeri): E 20,00
Abbonamento per l'estero (4 numeri) E 40,00
Prezzo della rivista: E 5,00 - Arretrati: E 10,00
Testata associata • Associazione Nazionale Editoria Periodica
Specializzata
Fiera Milano Editore è iscritta al Registro Operatori della Comunicazione n° 11125 del 25/07/2003. Autorizzazione
alla pubblicazione del tribunale di Milano n° 754 del 11/12/2006. Tutti i diritti di riproduzione degli articoli pubblicati
sono riservati. Manoscritti, disegni e fotografie non si restituiscono. LabVIEW World ha frequenza trimestrale, per un totale di 4 numeri all'anno. Tiratura del presente numero: 3.000 copie.
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
NUMERO DELLA RIVISTA:
13
NUMERI DI READER SERVICE
VICE
EDIZIONI FIERA MILANO EDI
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
Dati sul lettore
Nome
Cognome
Azienda
Indirizzo Azienda
Cap
Città
Prov.
Nazione
Tel.
Fax
e-mail
Consenso ai sensi dell’art.23 del D.Lgs. n.196 del 30 giugno 2003 (riportati anche sul Vs. sito
www.ilb2b.it), esprimo il consenso a che i dati qui contenuti vengano trattati, comunicati e diffusi da voi
e/o da Vs. aventi causa per l'attività di promozione e diffusione dei Vs. prodotti ed anche messi a disposizione di operatori qualificati e/o aziende del settore.
Il Mondo ha bisogno di nuove
tecnologie: tu sei pronto?
Media Partner
Se ti senti pronto a contribuire, scopri come la Progettazione Grafica
di Sistemi può aiutarti ad innovare le tue applicazioni di misura,
automazione, controllo e collaudo. Non perdere l’appuntamento
con il Forum Tecnologico mercoledì 24 febbraio a Roma.
Scopri NIDays 2010 su www.nidays.it
>>
Registrati a NIDays 2010 su www.nidays.it
NATIONAL INSTRUMENTS ITALY S.r.l. Q Via Anna Kuliscioff, 22 Q 20152 Milano Q Tel.: 02-413091 Q Fax: 02-41309215 Q P.IVA/C.F.: 09777310153
CCIAA Milano 1317488 Q Iscr. Trib. Milano 296073/7502/23
©2009 National Instruments. Tutti i diritti riservati. National Instruments, NI ed ni.com sono marchi registrati di National Instruments.
Altri prodotti e nomi aziendali citati sono marchi commerciali delle rispettive aziende. 0358
02 41.309.1
readerservice.it n.24546